我不知道要尝试什么,因为我在运行它时没有收到任何错误消息,只是空白,我正在跟一个YouTube上的家伙一起工作,他的工作也是如此
import requests
import bs4
import sys
import webbrowser
search = 'savage'
res = requests.get(f'https://google.com/search?q={search}')
res.raise_for_status()
soup = bs4.BeautifulSoup(res.text, 'html.parser')
linkelem = soup.select('.r a')
linkstoopen = min(5, len(linkelem))
for i in range(linkstoopen):
webbrowser.open('https://google.com', linkelem[i].get('href'))
应该在Google上打开“野蛮”的前5个结果
答案 0 :(得分:0)
正如Furas所建议的那样,我认为自从制作本教程以来,结果html代码可能已更改。
我可以对您的代码进行两项更改:
更改行:
linkelem = soup.select('.r a')
到
linkelem = []
for div in soup.find_all("div", {"class": "jfp3ef"}):
for link in div.select("a"):
linkelem.append(link)
查看我们从Google得到的响应,我们看到结果链接位于类名称为jfp3ef的div中。
然后您应该在上一个循环中将元素添加到Google网址
webbrowser.open('https://google.com' + linkelem[i].get('href'))