使用Python代码执行 Google 搜索
假设您正在做一个需要进行网络抓取的项目,但您事先不知道要在哪些网站上执行抓取,而是需要执行 google 搜索,然后根据 google 搜索结果继续搜索一些网站.在这种情况下,您需要针对不同查询的谷歌搜索结果。
- 实现此目的的一种方法是使用请求和美丽的汤,这已在使用 BeautifulSoup 在Python中实现 Web 抓取中进行了讨论。
- 谷歌包已经完成了,而不是把这么多的精力放在一个微不足道的任务上。直接找到所有谷歌搜索结果的链接几乎是一种单线解决方案。
- 使用Python包google我们可以从Python脚本中获取 google 搜索的结果。我们可以获得前 n 个搜索结果的链接。
安装
google 包对 beautifulsoup 有一个依赖项,需要先安装。
pip install beautifulsoup4
然后安装google包
pip install google
所需函数及其参数
- 查询:我们要搜索的查询字符串。
- TLD: TLD 代表顶级域,这意味着我们希望在 google.com 或 google 上搜索我们的结果。在或其他领域。
- lang: lang 代表语言。
- num:我们想要的结果数。
- start:要检索的第一个结果。
- stop:要检索的最后一个结果。使用 None 可以一直搜索。
- pause:在 HTTP 请求之间延迟等待。延迟时间过短可能会导致 Google 阻止您的 IP。保持重大失误会使您的程序变慢,但这是一个安全且更好的选择。
- 返回:生成找到的 URL 的生成器(迭代器)。如果 stop 参数为 None,则迭代器将永远循环。
关于如何使用Python脚本进行谷歌搜索的Python代码
示例 1:google_search.py
Python
try:
from googlesearch import search
except ImportError:
print("No module named 'google' found")
# to search
query = "Geeksforgeeks"
for j in search(query, tld="co.in", num=10, stop=10, pause=2):
print(j)
Python
try:
from googlesearch import search
except ImportError:
print("No module named 'google' found")
# to search
query = "A computer science portal"
for j in search(query, tld="co.in", num=10, stop=10, pause=2):
print(j)
输出:
让我们手动执行谷歌搜索并验证我们的结果
示例 2:google_search.py
Python
try:
from googlesearch import search
except ImportError:
print("No module named 'google' found")
# to search
query = "A computer science portal"
for j in search(query, tld="co.in", num=10, stop=10, pause=2):
print(j)
输出:
让我们手动执行谷歌搜索并验证我们的结果
参考:谷歌Python包