2015-03-31 40 views
4

Google网页搜索API看起来已经死了(旧的SOAP和新的AJAX)。有没有一种快速搜索Google字符串并返回结果数量的方法?我想我只需要运行搜索和搜索结果,但我很想知道是否有更好的方法。执行谷歌搜索并返回结果数

更新:事实证明,任何不使用新API的自动访问都违反了他们的服务条款,因此不推荐使用。

回答

7

还有a free API,但这里是一个屏幕刮板:

import requests 
from bs4 import BeautifulSoup 
import argparse 

parser = argparse.ArgumentParser(description='Get Google Count.') 
parser.add_argument('word', help='word to count') 
args = parser.parse_args() 

r = requests.get('http://www.google.com/search', 
       params={'q':'"'+args.word+'"', 
         "tbs":"li:1"} 
       ) 

soup = BeautifulSoup(r.text) 
print soup.find('div',{'id':'resultStats'}).text 

结果:

$ python g.py jones 
About 223,000,000 results 
$ python g.py smith 
About 325,000,000 results 
$ python g.py 'smith and jones' 
About 54,200,000 results 
$ python g.py 'alias smith and jones' 
About 181,000 results 
+0

奇怪的是,我得到一个404错误,当我尝试这一点,即使我可以在我的浏览器中加载搜索网址: – PurpleVermont 2015-04-02 00:04:10

+0

'<!DOCTYPE HTML PUBLIC“ - // IETF // DTD HTML 2.0 // EN”> 404未找到

未找到

所请求的URL /搜索此服务器上找到。


的Apache/2.2.3(红帽)在www.google.com端口80
' – PurpleVermont 2015-04-02 00:04:22

+0

我不知道是否有在混合代理服务器服务器。 – 2015-04-02 01:17:03