我的一些程序将直接查询发送给Google,然后解析HTML结果 - 例如 http://www.google.com/search?q=foobar&hl=en&num=20.

不幸的是,似乎从最近,当将此类查询发送到Google时,由于即时搜索,“ NUM”参数被忽略了。无论如何,页面中仅显示10个结果。如果您禁用即时搜索,则可以再次工作。问题是设置存储在cookie或其他物体中,如果可能的话,可以从程序侧进行预先设置,这是非常不切实际的。

是否有一种方法可以在查询中添加额外的参数以绕过即时搜索并再次使“ NUM”工作?我确定我不仅是一个解析Google HTML结果...

有帮助吗?

解决方案

其他提示

一个解决方法是使用仍然有效并发送多个查询的“开始”参数,但不是很干净。

http://www.google.com/search?q=foobar&hl=en&num=20&start=0
http://www.google.com/search?q=foobar&hl=en&num=20&start=10
...

更多的调查表明,这种“错误”似乎仅对Web浏览器发生,而不是使用不提供用户代理的HTTP客户端时。

所以毕竟事情仍然很好!

&complete=0 也将起作用。

例如:http://www.google.com/search?q=foobar&hl=en&num=20&complete=0

参考 此WebApps-Link.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top