python - 如何从 BeautifulSoup4 的 html 标签中找到特定的数据属性?

标签 python html web-scraping beautifulsoup

有没有办法只使用 html 中的 data 属性找到一个元素,然后获取该值?

例如,在 html 文档中的这一行:

<ul data-bin="Sdafdo39">

如何通过在整个 html 文档中搜索具有 data-bin 属性的元素来检索 Sdafdo39

最佳答案

更准确一点

[item['data-bin'] for item in bs.find_all('ul', attrs={'data-bin' : True})]


这样,迭代列表中只有具有您要查找的 attr 的 ul 元素

from bs4 import BeautifulSoup
bs = BeautifulSoup(html_doc)
html_doc = """<ul class="foo">foo</ul><ul data-bin="Sdafdo39">"""
[item['data-bin'] for item in bs.find_all('ul', attrs={'data-bin' : True})]


关于python - 如何从 BeautifulSoup4 的 html 标签中找到特定的数据属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24197922/

相关文章:

ie7 和 i6 上的 Jquery Slider 间距 fubar

python - 杂乱的扭曲连接在不干净的时尚中消失了。没有代理。已经尝试过标题

javascript - 抓取 m3u8 文件的路径

python - openerp 中的 rml 报告

python - 从 statsmodels OLS 结果中打印 'std err' 值

html - 如何在我的 .ts 文件中获取 <div> 高度

ruby - 添加反斜杠以修复 ruby​​ 字符串中的字符编码

python - 优化词梯

python - 计算 pandas DataFrame 中的行百分比?

html - 如何将 "last child"样式应用于而不是 :last-child element?