我尝试使用xgoogle python库来输入术语,并返回有多少搜索结果。这是我的代码:
from xgoogle.search import GoogleSearch
word1 = 'aardvark'
word2 = 'ablaze'
words = word1,"",word2
gs = GoogleSearch(words)
num = gs.num_results
print num
这是返回'Traceback(最近一次调用最后一次):
File "F:\google whack\SearchTest.py", line 6, in <module>
num = gs.num_results
File "C:\Python27\xgoogle\search.py", line 89, in num_results
page = self._get_results_page()
File "C:\Python27\xgoogle\search.py", line 189, in _get_results_page
safe_url = [url % { 'query': urllib.quote_plus(self.query),
File "C:\Python27\lib\urllib.py", line 1245, in quote_plus
return quote(s, safe)
File "C:\Python27\lib\urllib.py", line 1236, in quote
if not s.rstrip(safe):
AttributeError: 'tuple' object has no attribute 'rstrip''
如果有人知道如何让这个返回结果的数量,非常感谢帮助!感谢!!!
答案 0 :(得分:1)
您将words
作为元组传递。试着将这些单词连在一起代替:
gs = GoogleSearch(word1 + " " + word2)
答案 1 :(得分:1)
传递字符串最简单 - 无需创建多个变量。
gs = GoogleSearch("hello world")
或者,如果你有多个绑定到多个变量的字符串,你可以像@samplebias建议的那样加入它们,尽管他忘记了join()只接受一个参数,通常是一个元组。
gs = GoogleSearch(' '.join((word1, word2, word3)))
注意额外的一对括号。