不说废话直接上代码!!!!代码里没有一个是多余的代码 注释里写的很清楚不懂得评论区.......
# 导入requests库,用于发送HTTP请求
import requests
# 导入BeautifulSoup库,用于解析HTML文档
from bs4 import BeautifulSoup
# 定义目标网站的URL
# 请求网页
url = "https://www.bqka.cc/top/"
# 发送GET请求到目标URL,并保存响应对象
response = requests.get(url)
# 检查请求是否成功,状态码200表示成功
# 检查请求是否成功
if response.status_code == 200:
# 使用BeautifulSoup解析HTML响应文本
# 解析HTML
soup = BeautifulSoup(response.text, 'lxml')
# 找到排名列表所在的div元素
# 查找目标div
rank_div = soup.find('div', class_='wrap rank')
# 获取所有排名项的li元素
# 查找所有li元素
li_elements = rank_div.find_all('li')
# 遍历每个排名项
# 遍历li元素,提取a标签的内容
for li in li_elements:
# 找到每个排名项的书名链接
a_tag = li.find('a')
if a_tag:
# 输出书名
print(f'书名: {a_tag.text.strip()}')
# 找到并输出每个排名项的其他信息div
# 如果li内有其他div,可以进一步提取
inner_divs = li.find_all('div')
for div in inner_divs:
print(div.text.strip())
else:
# 如果请求失败,输出失败的状态码
print("请求失败,状态码:", response.status_code)