Wget 不获取 google 个搜索结果
Wget does not fetch google search results
我注意到当 运行 wget https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=foo
和类似查询时,我没有得到搜索结果,而是 google 主页。
google 页面中似乎有一些重定向。有谁知道 wget
的修复方法,这样它就可以工作了吗?
#q=foo
是您的提示,因为它是一个 fragment ID,永远不会发送到服务器。我猜你只是在使用实时搜索功能时从浏览器 URL-bar 中获取了这个 URL。由于它是通过大量客户端魔法实现的,因此您不能依赖它来工作;尝试在禁用实时搜索的情况下使用 Google。似乎有效的 URL 模式如下所示:http://www.google.com/search?hl=en&q=foo
.
但是,我确实注意到 Google returns 403 Forbidden
天真地用 wget
调用时,表明他们不希望这样。您可以通过设置一些其他用户代理字符串轻松地通过它,但在定期这样做之前请考虑所有的影响。
您可以使用此 curl 命令提取 Google 查询结果:
curl -sA "Chrome" -L 'http://www.google.com/search?hl=en&q=time' -o search.html
使用 https
URL:
curl -k -sA "Chrome" -L 'https://www.google.com/search?hl=en&q=time' -o ssearch.html
-A
选项在 Google.
请求中设置自定义用户代理 Chrome
我注意到当 运行 wget https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=foo
和类似查询时,我没有得到搜索结果,而是 google 主页。
google 页面中似乎有一些重定向。有谁知道 wget
的修复方法,这样它就可以工作了吗?
#q=foo
是您的提示,因为它是一个 fragment ID,永远不会发送到服务器。我猜你只是在使用实时搜索功能时从浏览器 URL-bar 中获取了这个 URL。由于它是通过大量客户端魔法实现的,因此您不能依赖它来工作;尝试在禁用实时搜索的情况下使用 Google。似乎有效的 URL 模式如下所示:http://www.google.com/search?hl=en&q=foo
.
但是,我确实注意到 Google returns 403 Forbidden
天真地用 wget
调用时,表明他们不希望这样。您可以通过设置一些其他用户代理字符串轻松地通过它,但在定期这样做之前请考虑所有的影响。
您可以使用此 curl 命令提取 Google 查询结果:
curl -sA "Chrome" -L 'http://www.google.com/search?hl=en&q=time' -o search.html
使用 https
URL:
curl -k -sA "Chrome" -L 'https://www.google.com/search?hl=en&q=time' -o ssearch.html
-A
选项在 Google.
Chrome