我的目标是创建一个小型的sript,它可以在“raw”中找到google搜索的所有结果
我的英语说得不太好,所以我想举个例子告诉你我想要什么:
I类型:大象
脚本返回
www.elephant.com
www.bluelephant.com
www.ebay.com/elephant
……
我在考虑urllib.request,但是返回值对它不可用!
我找到了一些教程,但完全不适应我的愿望!
就像我告诉你的,我的目标是有一个.txt文件作为输出,其中包含与我的查询匹配的所有网站!
谢谢大家
Tags:
一个简单的方法是请求google搜索,然后解析html结果。您可以使用一些Python库,例如usbeautifuldsoup,来轻松解析html内容,最后获得所需的url链接。
我只是在“第九维度”的答案上加了两点。
service = build('customsearch','v1',developerKey= my_api_key)
这些似乎经常改变,所以希望这个答案在一段时间内仍然有用。。。
首先,您需要创建一个Google自定义搜索,方法是访问他们的站点或按照这里提供的说明https://developers.google.com/custom-search/docs/tutorial/creatingcse。
这将为您提供
使用服务所需的凭据。
在python脚本中,您需要导入以下包:
这将使您能够创建生成对象:
根据文档,这构建了一个与API交互的资源。
如果要返回搜索结果,请在
service
的cse().list()
方法上调用execute()
:返回搜索结果列表,其中每个结果都是dictionary对象。第i个结果的URL可以通过“link”键访问:
请注意,一次调用只能返回10个结果,因此请使用
.list()
中的start
关键字参数,并考虑将此调用嵌入到循环中,以便一次生成多个链接。你应该能够找到很多关于将搜索结果保存到文本文件的答案。
N.B.一开始还有一件事让我很困惑——大概你会想搜索整个网站,而不仅仅是一个网站。但是在创建CSE时,会要求您指定要搜索的单个站点或站点列表。别担心,只要输入任何旧的东西,你可以稍后删除它。甚至连谷歌也支持这一黑客攻击:
相关问题 更多 >
编程相关推荐