这是我在这里的第一个问题,我开始学习 python,已经看了很多视频。
感谢您能在我下面的代码中启发我,
我收到以下错误“AttributeError: 'NoneType' 对象没有属性 'find'”
我只需要搜索一个词(在这个例子中是鹦鹉)并在类中刮下并列出标题:“片段”
import requests
from bs4 import BeautifulSoup
page = requests.get("http://web.archive.org/web/*/parrot#")
soup = BeautifulSoup(page.content, 'html.parser')
container = soup.find("div", {"class":"search-result-container container"})
mysnippet = container.find("div", {"class":"snippet"})
print("List of Titles")
print(mysnippet)
如果你打印你的汤,你会发现数据不存在,甚至那个 div 标签包含 ::before 意味着动态加载
所以你可以先尝试这种方法,先进入 chrome 开发者模式,然后网络选项卡现在刷新你的浏览器
在 xhr 中,您可以在 Name 选项卡下找到链接,其中第二个链接包含 json 数据,因此您可以通过从该查找标题中复制链接地址来获取该链接
import requests res=requests.get("http://web.archive.org/__wb/search/anchor?q=parrot") main_data=res.json() for i in range(len(main_data)): print(main_data[i]['text'])
输出:
parrot
dead parrot society
parrot forum
parrot vids
....
图片:
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句