bs4 BeautifulSoup找不到看起来像是拯救我生命的自定义标签

2024-10-02 00:38:44 发布

您现在位置:Python中文网/ 问答频道 /正文

无可否认,我是Python的初学者和中级高手,也是美化群像/网页抓取的新手。然而,我已经成功地构建了两个刮刀。正常标签=无问题(例如,div、a、li等)

但是,找不到如何使用.select或.find或attrs=“”或任何内容引用此标记:

。。。。。。。。。。 <;反应类型=“sad”msgid=“25314120”num=“2” ..........

我最终想要这个看起来像“num”属性的东西,不管这个可怕的东西是什么。。。“反应”标签(尽管我不认为这是一件事?)


Tags: 标记div网页内容li标签findselect
3条回答

.find()的工作方式与其他标签(如divpa)的工作方式相同。因此,我们搜索“react”标记

react_tag = soup.find('react')

然后,像这样访问num属性

num_value = react_tag['num']

应打印:

2

用户“sn”是正确的!这些是动态创建的javascript,我对此一无所知,但很容易理解。同时使用Python中的SeleniumLibrary和“headless”WebChromeDriver,您可以使用诸如Xpath等Selenium选择器来查找这些标记

根据bs4 Documentation.find('tag')返回单个标记.find_all('tag')返回html格式的标记列表

在您的情况下,如果有多个react标记,请使用此选项

for reactTag in soup.find_all('react'):
    print(reactTag.get('num'))

要仅获取第一个标记,请使用此

print(soup.find('react').get('num'))

相关问题 更多 >

    热门问题