2017-04-18 53 views
0

我是网络爬虫的新手,感谢您的帮助。我需要执行的任务是从Google搜索中获取完整的返回HTTP响应。当谷歌在浏览器中的搜索关键字搜索,在返回页面中,有一章节:如何从谷歌搜索结果页面获取完整的HTML内容

相关搜索XXXX(XXXX为搜索词)

我需要提取网页的这一部分页。从我的研究中,目前大多数关于谷歌爬行的软件包都无法提取这部分信息。我试图使用的urllib2,用下面的代码:

import urllib2 
url = "https://www.google.com.sg/search? q=test&ie=&oe=#q=international+business+machine&spf=187" 
req = urllib2.Request(url, headers={'User-Agent' : 'Mozilla/5.0'}) 
con = urllib2.urlopen(req) 
strs = con.read() 
print strs 

我得到一大块文本,它看起来像合法的HTTP响应,但在文本中,没有涉及到我的搜索键的任何内容“国际商业机器“。我知道Google可能会检测到这不是来自实际浏览器的请求,因此隐藏此信息。我是否可以知道是否有任何方法绕过此问题并获得谷歌搜索结果的“相关搜索”部分?谢谢。

+0

http://stackoverflow.com/questions/38619478 /谷歌搜索的Web刮与 - 蟒蛇;试试这个解决方案 – anonyXmous

+0

@anonyXmous。非常感谢。简单和像魅力一样工作。诀窍是使用: 从请求导入获取 – user1750197

回答

0

正如@anonyXmous指出的那样。在有用的帖子指是在这里:

Google Search Web Scraping with Python

from requests import get 
keyword = "internation business machine" 
url = "https://google.com/search?q="+keyword 
raw = get(url).text 
print raw 

我能够获得 “原始” 所需要的文本