我想将字符串发布到Google搜索表单并获取第一个结果的链接。 现在我只有简单的脚本,没有任何POST并使用SimpleHtmlDom。
$arrContextOptions = [
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false
],
'http' => [
'method' => "GET",
'header' => "Accept-language: en\r\n" .
"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6\r\n".
"Cookie: foo=bar\r\n"
]
];
$html = HtmlDomParser::file_get_html("http://www.google.com/search?q=".urlencode($title), false, stream_context_create($arrContextOptions));
$link = $html->find("div[id=ires] div[class=g] h3[class=r] a",0)->href;
但问题是,这个“href”的格式格式不正确,所以我无法使用它。我试图找到一些谷歌API,但没有成功。
我该如何解决这个问题?
答案 0 :(得分:2)
您应该使用Google API来执行此操作。 Google不允许用户执行此操作。即使你可以在技术上做到这一点,谷歌也会禁止你的IP,因为它违反了他们的政策。 我建议您为此目的使用https://github.com/imarc/google-site-search。