python抓取google搜索结果
这段时间由于要做一个系统,时间比较忙,博客更新的就不及时,有点抱歉,还是说今天的话题把:因为要抓取一些google上面的搜索结果数据,开始用的是python传统的获取数据的方法比如:[python beautifulsoup多线程分析抓取网页] ,[python SGMLParser] 来获取数据,后来采集了没多久,google就自动封掉了,期间尝试过换IP,模拟浏览器的方法用了一段时间还是不行,看来google防止抓取的功能太强了,正愁没思路的时候,偶然间在网上看到一个方法就是用google提供的api来或者结果,这样省时又省力,于是乎就研究起来了,最后10几行代码就搞定了,之前我写了上百行代码,看来有了python google api来做python 抓取google搜索结果还是挺爽的。
废话少说上代码:
www.zzzyk.com
url= ('https://ajax.googleapis.com/ajax/services/search/web'
'?v=1.0&q=%s&rsz=8&start=%s') % (search,page)
try:
request=urllib2.Request(
url,None,{'Referer':'http://www.baidu.com'})
response=urllib2.urlopen(request)
# Process the JSON string.
results=易做图json.load(response)
info=results['responseData']['results']
exceptException,e:
printe
time.sleep(5)
continue
forminfoininfo:
forkeyinminfo.keys():
ifkey=='url':
try:
print'url:%s'%minfo[key]
这样就可以根据搜索关键词把搜索结果列表的网址给提取出来,这个api url可以接受很多参数,如果想去了解的话,可以看看具体的python google api 文档。
作者lonely
补充:Web开发 , Python ,