数据抓取 --Beautiful Soup库的使用问题(3) - 使用find或者find_all的时候 非class 或者 id 的时候定位出现问题。

数据抓取 --Beautiful Soup库的使用问题(2) 使用 find_all,Tag 和 find 基本解决爬虫中的95%以上有难度的需求

 

在爬取数据的时候我们会使用find或者find_all 来定位tag标签的位置。

举例:通常使用  class_  或者 id 都能找到对应的。

    # 5.前台价格

    retail_price = soup.find(id='slice-pdp').strong.get_text()

 

但是如果碰到像其它的定位符的时候,上面的公式经常就会报错了。

 

举例:要找到服装的这个文本,

<a href="/cn/shopping/women/clothing-1/items.aspx" class="_7fe79a _49f7ca _8f992f" data-ffref="pp_top_bc&amp;pos=3&amp;name=/cn/shopping/women/clothing-1/items.aspx" data-type="category" itemprop="item" itemtype="http://schema.org/Thing"><span itemprop="name">服装</span></a>
<span itemprop="name">服装</span>


那么使用

type1_item = soup.find('span', 'itemprop'='name').get_text()

结果就会报错。

方法:改为字典寻找就可以定位到了。

soup.find(id='slice-pdp').find('span', {'itemprop':'name'}).get_text()

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值