我正在使用以下代码从谷歌搜索中提取链接,以用于获取包含关键字的文本。
# -*- coding: utf-8 -*-
import json
import urllib.request, urllib.parse
def showsome(searchfor,rzs,start,lang):
query = urllib.parse.urlencode({'q': searchfor})
url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&{0}&q=gates&rsz={1}&start={2}&hl={3}'.format(query,rzs,start,lang)
search_response = urllib.request.urlopen(url)
search_results = search_response.read().decode("utf8")
results = json.loads(search_results)
data = results['responseData']
print(data)
hits = data['results']
print(hits)
#print('Top %d hits:' % len(hits))
listofLinks = []
for h in hits:
#print(' ', h['url'])
listofLinks.append(h['url'])
return(listofLinks)
showsome('manger','1','4','fr')
但是,每隔一段时间我就会收到以下错误:
回溯(最近一次通话最后):
文件“C:\Python33\code\htmlDraft.py”,第 27 行,在
print(showsome('manger','4','1','fr'))
文件“C:\Python33\code\htmlDraft.py”,第 17 行,in showsome
hits = data['results']
TypeError:“NoneType”对象不可下标
这意味着他没有收到数据。那是因为谷歌阻止了我吗?我以为我在使用他们的 ajax API。