【发布时间】:2017-11-28 00:32:16
【问题描述】:
我不知道发生了什么,但两天前相同的代码仍在工作!
我尝试使用 itemprop = "name" 获取文本,这是所提供项目的标题。在这种情况下:“色板”。
import requests
import bs4
response2 = requests.get('https://www.willhaben.at/iad/kaufen-und-verkaufen/d/swatch-209522646/').content
soup2 = bs4.BeautifulSoup(response2, "lxml")
texttitle = soup2.find(itemprop = "name").get_text().strip()
print(texttitle)
我怎么总是得到AttributeError: 'NoneType' object has no attribute 'get_text'
谁能解释我为什么会得到 AttributeError?非常感谢。
编辑:
我也尝试直接使用 css 路径定位它,但这并没有给我任何结果。 作者:
texttitle = soup2.find('div.adHeadingLine div.adHeading h1.header.cXenseParse').get_text().strip()
【问题讨论】:
-
只是
text()而不是get_text() -
主要是因为
soup2.find(itemprop = "name")实际上返回 None。您应该打印出所有调用的结果以查看实际返回的结果,并更深入地检查以了解真正的 问题所在。从那里,您可以确定应该采取哪些措施来解决问题。 -
同样 text() 给出同样的错误。
-
@fahrradlaus 不可能知道谁对你投了反对票,所以最好永远不要假设并试图呼吁人们反对它。此外,无论此处使用哪种方法正确,您在自己的故障排除中都错过了几个步骤。我之前的评论提供了一些背景信息。
-
@idjaw 抱歉,我只是觉得在没有任何评论的情况下投反对票是不公平的。尽管如此,我在定位 css 路径时尝试了一些故障排除,但这并没有把我带到任何地方。
标签: python html css beautifulsoup