运用bs4库采集数据

一、将HTML源代码解析为DOM树

soup1 = BeautifulSoup(r.text, 'lxml')  # ‘lxml’是解析器

二、找到要采集文本内容所在的标签对象

  1. 按属性查找:

soup.head
soup.title
  1. 按查找方法查找

soup.find(name='', attrs={})方法:返回符合条件的第一个标签对象

div = soup1.find(name='div',attrs={'id':'top_head_inner'})  # 返回查找到的第一个标签对象

soup.find_all(name='', attrs={})方法:返回符合条件的所有标签对象(列表形式)

div_all = soup1.find_all(name='div')

soup.select():

# 可以通过标签名,class值,id值,及其组合、子标签查找
div1 = soup1.select('div')  # 按照标签名查找
# print(div1)
div_a = soup1.select('div>a')  # 按照子标签查找
# print(div_a)
example = soup1.select('#top_head_right')  # 按照id查找
# print(example)
example1 = soup1.select('div.inner')  # 查找标题名为div,class为inner的内容
# print(example1)
example2 = soup2.select('div.inner>a')  # 查找div中class=inner,子标签为a的内容
# print(example2)
  1. 根据所采集内容在标签对象中的位置采集数据

# 根据内容在标签对象中位置采集数据
# print(div.text)  # div.text获取文本
# print(div.string)  # 有子节点,返回none
# print(div.name)  # div.name返回名字
# print(div_list[34].attrs)  # div.attrs返回字典,包含所有属性及其值
# print(title.string)  # 返回该标签所包围的文本(没有其他标签,返回其中内容)
# print(div.contents)  # 列表,该标签对象包含的左右下一级子标签对象
# print(div.attrs['id'])  # 返回属性值,常用于网址保存#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西西弗斯推石头

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值