13用BeautifulSoup爬取网站

 代码如下

复制代码

from bs4 import BeautifulSoup
import requests

'''
本例子通过BeautifulSoup 的常用方法find_all 查询出所有包含电影名字的a标签的父节点h4,再通过父节点遍历得到a标签中的文本。
find_all 里面的参数一般是class_ 、id、name等html属性值,批量爬取数据时往往使用的是class属性。
目标html结构

<h4 class="title text-overflow">
<a href="/vod/47562.html" title="梦游乐园">梦游乐园</a>
</h4>
BeautifulSoup 的作用不仅如此,还可以获取属性值等等,根据网页结构和属性捕获数据。

案例2:
假设一个table表格中,找tr标签中的所有td标签。
soup = BeautifulSoup(html, 'lxml')
# 先找到td标签,可以根据上面用属性去找,也可以直接通过标签,
tr_tag = soup.find('tr')
# 获取了tr标签后,搜索内部,可以用属性去找或标签名称。
td_tags = tr_tag.find_all('td')

案例3:
根据元素名称及属性搜索元素
form_tag=main_tag.find_all('form',attrs={'name': 'items'})

form_tag=main_tag.find('form',attrs={'name': 'items'})

案例4:
获取tbody下直接的子元素tr。
思路:先获取tbody元素中所有tr元素,在用tr.parent == tbody_tag判断是否是直接子元素
tbody_tag = form_tag.find('tbody')
tr_tag = tbody_tag.find_all('tr')
tr_list = [tr for tr in tr_tag if tr.parent == tbody_tag]
print(len(tr_list))
'''

# 案例实现
def fun1():
req = requests.session()
headers = {
'authority': 'fsbj001.com',
'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8',
'cache-control': 'no-cache',
'pragma': 'no-cache',
'referer': 'https://fsbj001.com/list/dianying-1.html',
'sec-ch-ua': '"Not/A)Brand";v="99", "Google Chrome";v="115", "Chromium";v="115"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"Windows"',
'sec-fetch-dest': 'document',
'sec-fetch-mode': 'navigate',
'sec-fetch-site': 'same-origin',
'sec-fetch-user': '?1',
'upgrade-insecure-requests': '1',
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36',
}

response = req.get('https://fsbj001.com/list/dianying-1.html', headers=headers)
soup = BeautifulSoup(response.text, 'lxml')

h4_list = soup.find_all(class_='title text-overflow')
for h4 in h4_list:
# print(h4.a.text) 等价下面语句,有时string无法输出 用text输出。
print(h4.a.string)





复制代码

 输出结果

复制代码
兴安岭猎人传说2
星条红与皇室蓝
金牌保镖
谍之心
关于我和鬼变成家人的那件事
白日青春
爷爷的人生滑板
玛丽·塞莱斯特的附魔
扫毒3:人在天涯粤语
72小时-黄金行动
扫毒3:人在天涯国语
不要见怪
河畔城市
亚当2019
...
复制代码

 

posted @   冷夜O  阅读(106)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示