在使用beautifulsoup和python进行网络抓取时,我是一个初学者。在yt-videos的帮助下,我设法接近了我的目标,即提取汽车销售方面许多汽车列表的汽车名称。但是,我已走到最后一步,不知道如何访问汽车名称:
这是我的代码(我只是遵循youtube示例):
page_soup = soup(page_html, "html.parser")
containers = page_soup.findAll("div",{"class":"ads__unit__content"})
contain = containers[0]
container = containers[0]
当我执行时: container.h2.a
我获得:
梅赛德斯·奔驰E-klasse全地形E220d 4M全地形
如何仅获得“ Mercedes-Benz E-klasse All-Terrain E220d 4M All-Terrain”汽车名称的最后一步?
如果我这样做
container.h2.a["id"]
我获得“ 163525571”。但是汽车名称前面没有像id =这样的东西。
希望您能理解我的问题。我对Python非常陌生,对此了解也不多。
最诚挚的问候
答案 0 :(得分:0)
如果您知道标签的确切位置,请尝试以下方法。希望对您有帮助。
container.h2.text
答案 1 :(得分:0)
要访问元素的文本,可以使用.text
属性。这将返回该特定节点内的所有文本节点。
要访问特定孩子的文本,您可以像这样将其编入索引:
soup.find('div', {'class': 'ads__unit__content__keys'}).findAll('div')[2]
这将返回div的第3个子类中的文本,该子类具有ads__unit__content__keys
类。
另外,欢迎来到SO:D