纵使杯|

little小新

园龄:2年6个月粉丝:8关注:0

2024-07-01 22:24阅读: 10评论: 0推荐: 0

8、爬虫-beatifulsoup-bs4

 

beatifulsoup的概念:Beautiful Soup就是Python的一个HTML或XML的解析库,可以用它方便地提取页面的数据。

 

 

1、安装bs4:pip install bs4

2、使用:from bs4 import BeautifulSoup

3、创建对象:BeautifulSoup(文本,“html.parser”)  #html.parser 告诉解析器这是个html文本

4、bs4只有两个功能函数:

  find(标签名,属性=值)    #只找第一个  、属性=值可不写

  find_all(标签名,属性=值)  #查找所有

  .text表示取被标签标记的内容 :如 <h1>被标记的内容</h1>

  .get(属性)  #可以拿到属性的值  如:<a href=http://xxxx>xxxx</a>     .get("href")  既可以取到http://xxxx

 

5、案例:取到视频的标题

"""
查找视频名称
"""
import requests
from bs4 import BeautifulSoup
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
url="https://www.xinpianchang.com/discover/article-69-0?utm_source=xpcWeb&utm_medium=navigatorCate&index=13"
response = requests.get(url,headers=headers)
#print(response.text)
#创建bs4对象
page = BeautifulSoup(response.text,"html.parser") #指定bs4解析器、html.parser告诉解析器这是一个html文本
#从拿到的文本中提取数据、通过标签和属性取值
#title = page.find_all("h2", class_="truncate block") #这里属性class_ 这样写是因为、再python中class是关键字 、也可以这样写:如下
titles = page.find_all("h2", attrs={"class": "truncate block"}) #等同于上面的
#拿到这个数据<h2 class="truncate block" title="抖音年度动画短片《鼠国列车》:这个世界的一切竟然都是复制粘贴的?">抖音年度动画短片《鼠国列车》:这个世界的一切竟然都是复制粘贴的?</h2>
#print(title.text)
for title in titles:
print(title.text)

本文作者:little小新

本文链接:https://www.cnblogs.com/littlecc/p/17953449

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   little小新  阅读(10)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起