1

我可以得到搜索结果页面的源代码。所以我的问题是关于如何获得更多。对于 google,它只显示我得到的源代码中的前 20 个图像结果,对于 Yahoo,它大约是 50 个。因为在这两种情况下,真实的人都需要向下滚动页面才能看到更多搜索结果。

问题:脚本是否可以为我“向下滚动”以便获得更多结果?

我正在使用的代码:

require_once('simple_html_dom.php');
$url = "https://www.google.com/search?tbm=isch&q=cool+image";
$html = file_get_html($url);
foreach($html->find('img') as $element) {


    $image_url = $element->src; 

    echo $image_url, "<br />";}
4

1 回答 1

1

我会回答我自己的问题。- -|||

谷歌实际上保留了旧版本。要使用该版本,首先搜索一些内容,然后滚动到底部并单击“切换到基本版本”。

现在每页只显示 20 张图片,并且 url 包含页面参数。

因为它每页显示 20 张图片,所以第二页的 url 有参数:

start=20

第三页将是

start=40

这个参数: sout=1 需要在 url 中告诉 google 你想要基本版本。

总而言之,最简单的带有页码的谷歌图片搜索 url 将是:

$url = "https://www.google.com/search?tbm=isch&sout=1&start=" . ($pageNum -1)*20. "&q="  . $key_word ;
于 2012-12-09T06:48:27.647 回答