503 Google搜索服务不可用

时间:2015-08-03 19:50:17

标签: php

我使用php从谷歌搜索结果中提取数据。 这是我在php中的代码。

<?php
$url="https://www.google.co.in/search?      
q=allintext:Theatre%20Actors&sort=date&cr=countryIN&aqs=chrome..69i57.1033j0j7&sourceid=chrome&es_sm=93";
  $homepage = file_get_contents($url);
  $ans = htmlentities($homepage);
  $doc = new DOMDocument();
  @$doc->loadHTML($homepage);
  $tags = $doc->getElementsByTagName('h3');
  $finder = new DOMXPath($doc);
  $node = $finder->query("//h3[contains(@class, 'r')]");
  foreach ($node as $tag) {
   $temp = $tag->getElementsByTagName('a');               
   $string = "";
   foreach ($temp as $key) {
        $k=0;
        $data = $key->getAttribute('href');
        //echo $data;
        for($i=0;$i<strlen($data);$i++){
            if($data[$i]=="&") break;
            if($data[$i]=="="){
                $k=1; continue;
            }
            if($k==1){
                 $string.=$data[$i];   
            }
        }
   }
   $idx=  split(":", $string);
   if(strcmp($idx[0],"http")!=0 && strcmp($idx[0],'https')!=0)     continue; 
   $ans = '<a href='.$string.'>'.$string.'</a>';
   echo $ans;
   echo '<hr>';
  }
  ?>

运行此脚本后,出现此错误: 警告:file_get_contents(https://www.google.co.in/search?q=allintext:Theatre%20Actors&sort=date&cr=countryIN&aqs=chrome..69i57.1033j0j7&sourceid=chrome&es_sm=93):无法打开流:HTTP请求失败!第4行/opt/lampp/htdocs/search/script.php中的HTTP / 1.0 503服务不可用

请帮忙。 在此先感谢。

1 个答案:

答案 0 :(得分:2)

也许Google阻止了您的请求: - 如果您经常运行脚本 - 谷歌本身不喜欢像'file_get_contents'

这样的机器人

另见:HTTP request failed! HTTP/1.1 503 Service Temporarily Unavailable