首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >美观的div数据解析错误

美观的div数据解析错误
EN

Stack Overflow用户
提问于 2019-02-09 18:55:28
回答 1查看 30关注 0票数 0

示例代码:

代码语言:javascript
复制
<div class="sort-line selected"  
data-discount="3392" 
data-count="669" 
data-ship_price="0"
>

我想通过bs4解析"669“,但出现错误'NoneType‘对象不可调用。

任何帮助都将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-09 19:01:57

首先,您必须隔离标记,然后可以将其视为字典,以获取所需的属性值。Read the documentation获取更多关于这方面的信息。

代码语言:javascript
复制
html="""
<div class="sort-line selected"
data-discount="3392"
data-count="669"
data-ship_price="0">
</div>
"""
from bs4 import BeautifulSoup
soup=BeautifulSoup(html,'html.parser')
div=soup.find('div')
print(div['data-count'])

输出:

代码语言:javascript
复制
669

如果有许多div,您应该包含更多的filters来隔离div。例如:

代码语言:javascript
复制
div=soup.find('div',class_="sort-line selected")

使用您的url

代码语言:javascript
复制
import requests
from bs4 import BeautifulSoup
r=requests.get('https://pandao.ru/product/b89db09a-d978-437c-be37-a0c2ceffc315?d=1de543b5-527e-44e4-9888-d880d1a3c331&pid=7a9bf860-bcc7-41ea-a03f-c6bcd3e2b8f5')
soup=BeautifulSoup(r.text,'html.parser')
div=soup.find('div',class_="sort-line selected")
print(div['data-count'])

输出:

代码语言:javascript
复制
667
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54605521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档