Python《从零开始学习网络爬虫》——第03课,BeautifulSoup库的相关方法

find_all()、find()、selector()方法

文章目录


前言

        上一文档讲了如何导入BeautifulSoup库,以及库的规范化输出html数据,本次文档将讲解find_all()、find()、selector()三个提取标签的方法。

所爬取的网页地址:笔趣阁_书友最值得收藏的网络小说阅读网笔趣阁是广大书友最值得收藏的网络小说阅读网,笔趣阁网站收录了当前最火热的网络小说,笔趣阁5200免费提供高质量的小说最新章节,是广大网络小说爱好者必备的小说阅读网。icon-default.png?t=N7T8http://www.222biquge.com/modules/article/search.php?searchkey=%E5%89%91%E6%9D%A5


一、find_all()和find()方法

知识点:

soup.find_all('div','item')  查找div标签,class='item',

soup.find_all('div',class='item') 查找div标签,class='item',

soup.find_all('div',attrs={'class':'item'}) 自定义字典参数获取特殊属性的tag

#使用find_all()方法和find()方法

import requests
from bs4 import BeautifulSoup #导入相关库函数

#网站地址
url='http://www.222biquge.com/modules/article/search.php?searchkey=%E5%89%91%E6%9D%A5'

#伪装headers
headers={
    'Cookie': 'vc=1; Hm_lvt_e1880e6cb1c4b425fe63ef614765e9ec=1694943134; Hm_lpvt_e1880e6cb1c4b425fe63ef614765e9ec=1694943161',
    'Host': 'www.222biquge.com',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.125 Safari/537.36',
}


response=requests.get(url=url,headers=headers)
#print(response.text)     #使用此句访问,查看自己是否访问到该网页

soup=BeautifulSoup(response.text,'html.parser')
#print(soup.prettify())    #soup显示的更加清楚,输出的内容会自动分行

tbodys=soup.find_all('td',attrs={"class":"odd"}) #根据键值对可以万能取值,td是标签,class是属性,odd是属性名

print('这是find_all()所提取的标签列表')
print(tbodys)

print('这是用循环查看列表子元素')
for tbody in tbodys:
    print(tbody)

print('这是用find()方法,只能获取到第一个标签元素')
one_tbody=soup.find('td',attrs={"class":"odd"})
print(one_tbody)



 

 

 

二、selector()方法

selector()貌似已经使用不了了

三、附加内容——.text



print('这是用循环查看列表子元素')
for tbody in tbodys:
    print(tbody.text)


 

注意到t.text能获取到标签里面的文本数据,方便进行数据解析。

.text只能用于元素,不能用于列表


总结

find_all()提取所有对应的标签,find()提取一个标签数据,.text提取文本数据。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

烧酒调调

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

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

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

打赏作者

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

抵扣说明:

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

余额充值