AJAX Python3 Googleresults Google阻止抓取

时间:2013-10-24 18:14:15

标签: python ajax google-search

我正在使用以下代码从Google搜索中提取链接,以用于获取包含关键字的文字。

# -*- 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行,在showome

hits = data['results']
     

TypeError:'NoneType'对象不可订阅

这意味着他没有收到数据。 这是因为谷歌阻止了我吗?我以为我在使用他们的ajax API。

0 个答案:

没有答案