如何解决无法通过网页抓取从 Google 搜索页面抓取所有链接
我是网络抓取的初学者。最近我尝试从 Google SERP 的搜索结果中抓取域名。
为了实现这一点,我使用了 Requests、Beautiful Soup 和 Regex 来获取页面、解析标签并查看 href 并使用正则表达式匹配来提取域名。
执行此操作时,输出中缺少一些链接。问题似乎是请求没有完全获取页面,因为我将获取的文本与 Chrome 上的源代码进行了比较(丢失的标签存在于丢失的代码中)。我想知道可能是什么原因!
import requests
from bs4 import BeautifulSoup
import re
url = "https://www.google.com/search?q=glass+beads+india"
r = requests.get(url)
page = r.text
soup = BeautifulSoup(page,'lxml')
i = 0
link_list = []
for tag in soup.find_all('a'):
i+=1
href = tag['href']
if re.search('http',href):
try:
link = re.search('https://.+\.com',href).group(0)
link_list.append(link)
except:
pass
link_list = list(set(link_list))
link_list2 = []
for link in link_list:
if not re.search('google.com',link):
link_list2.append(link)
print(link_list2)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。