我想从谷歌搜索引擎获得十大结果。我写道:
from google import search
for i in search('python', stop=10):
print i
它返回10个以上的结果。获得前n个结果的正确方法是什么?当我将stop = 10更改为stop = 2时,它会返回完全相同的结果数。是否可以仅打印主域名(现在它打印来自同一域的多个链接(例如维基百科)以及它们是否位于第一个结果页面中的图像)?
答案 0 :(得分:1)
您可以在此处使用googlescraper模块。
print(sum(len(page['results']) for page in results))
print(results[0]['num_results_for_kw'])
您可以查看此链接以获取更多信息: Check this link
希望有所帮助;)
答案 1 :(得分:1)
从阅读the source code for search
开始,看起来真实的行为是它返回完整结果的页面,直到它到达(或通过)stop
。因此,如果结果的第一页上有14个链接,您将获得至少14个链接。
但是很容易枚举不到那个。这里的代码可以解决这个问题:
from __future__ import print_function
from itertools import islice
from google import search
for url in islice(search('python', stop=5), 0, 5):
print(url)