示例#1
0
 $baseKeyword = 'pozycjonowanie ';
 $emailFileStorage = sprintf('%s/email-%s-%s.csv', __DIR__, date('Ymd-His'), $baseKeyword);
 $handle = fopen($emailFileStorage, 'a');
 fputcsv($handle, array('city', 'email', 'title', 'url', 'position', 'facebook'));
 $cacheOptions = new DataSource\Options\Cache();
 $cacheOptions->setCacheDir(__DIR__ . '/cache');
 //    register_shutdown_function(function() {
 //        global $handle;
 //        fclose($handle);
 //    });
 foreach ($miasta as $i => $miasto) {
     $query = $baseKeyword . ' ' . $miasto . ' +kontakt +email';
     echo "\ncity: {$miasto} ({$i} from " . count($miasta) . ") query: {$query} \n";
     $definition = new Definition\GoogleSearch();
     $definition->setQuery($query);
     $definition->setOnPage(100);
     $source = new DataSource\Url($definition);
     $source = new DataSource\Cache($source, $cacheOptions);
     $extractor = new Extractor\GoogleSearch($source);
     try {
         $extraction = $extractor->extract();
     } catch (\Exception $e) {
         echo $e->getMessage() . ' ' . $result->getUrl() . "\n";
         goto save;
     }
     $searchResults = $extraction->getSearchResults();
     $it = new \ArrayIterator($searchResults);
     $data = array();
     while ($it->valid()) {
         /** @var $result \Sengin\Extraction\SearchResult */
         $result = $it->current();