当前位置: 首页 > news >正文

python学习笔记--实现简单的爬虫(二)

任务:爬取B站上最爱欢迎的编程课程

网址:编程-哔哩哔哩_bilibili

打开网页的代码模块,如下图:

 标题均位于class_="bili-video-card__info--tit"的h3标签中,下面通过代码来实现,需要说明的是URL中的中文写到程序中,已自动转义:

import requests
from bs4 import BeautifulSoup

url = 'https://search.bilibili.com/all?keyword=%E7%BC%96%E7%A8%8B&from_source=banner_search&order=show&duration=0&tids_1=0'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
}
# 设置请求头,模拟浏览器访问
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
}

# 发送GET请求
response = requests.get(url, headers=headers)

# 检查请求是否成功
if response.status_code == 200:
    # 解析HTML内容
    soup = BeautifulSoup(response.text, "html.parser")

    # 查找所有<h3>标签
    h3_tags = soup.find_all("h3", class_="bili-video-card__info--tit")

    # 遍历所有<h3>标签,提取title属性值
    for index, h3_tag in enumerate(h3_tags, start=1):
        title = h3_tag.get("title")
        if title:
            print(f"Title {index}: {title}")
        else:
            print(f"Title {index}: 无title属性")
else:
    print("请求失败,状态码:", response.status_code)

输出:

需要注意的是:网页的代码并非一成不变,爬取时一定要使用F12分析其代码结构。 

相关文章:

  • AutoImageProcessor代码分析
  • Python设计模式 - 适配器模式
  • 二十四、实战开发 uni-app x 项目(仿京东)- 前后端实现登录注册
  • 在线生成自定义二维码
  • 失物招领|校园失物招领系统|基于Springboot的校园失物招领系统设计与实现(源码+数据库+文档)
  • 【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring Boot 中的异常处理:全局异常与自定义异常
  • 【自学笔记】Linux基础知识点总览-持续更新
  • 利用Dify编制用户问题意图识别和规范化回复
  • C#单例模式
  • 常考计算机操作系统面试习题(二)(中)
  • Windows——电脑无法正常上网的一种解决办法
  • 统计学重要概念:自由度
  • 《Python实战进阶》第43集:使用 asyncio 实现异步编程
  • Amdahl 定律
  • react 中 key 的使用
  • 抗积分饱和(Anti-Windup)常见的处理方法
  • SpringBoot原理篇-SpringBoot配置优先级-Bean管理-起步依赖原理-自动配置两种方案-源码跟踪-自定义starter
  • 不同的CMS系统开源许可证对二次开发有哪些具体的限制?
  • 运维面试题(七)
  • 【矩阵快速幂】 P10502 Matrix Power Series|省选-
  • 国羽3比0横扫日本晋级苏迪曼杯决赛,将战韩国与印尼胜者
  • 新加坡2025年大选开始投票
  • 人形机器人,最重要的还是“脑子”
  • 西部航空回应飞机上卖彩票:与重庆福彩合作,仅部分航班售卖
  • 宿州市委副书记任东已任市政府党组书记
  • 五大光伏龙头一季度亏损超80亿元,行业冬天难言结束