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

Python简易网页爬虫|requests+BeautifulSoup实战

博客导语

爬虫是Python最热门实战方向,本项目带你从零实现简易静态网页爬虫,基于requests 请求库 + BeautifulSoup解析库,实现网页数据抓取、标签解析、文本提取,掌握爬虫核心流程,适合新手入门爬虫领域。


一、技术栈与环境安装

pip install requests beautifulsoup4

二、爬虫核心流程

  1. 发送网络请求,获取网页源码

  2. 解析网页源码,定位目标标签

  3. 提取文本、链接等目标数据

  4. 打印/保存数据


三、完整实战代码

import requests from bs4 import BeautifulSoup def simple_spider(): # 目标网址(以百度首页为例) url = "https://www.baidu.com" # 请求头,模拟浏览器访问 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" } try: # 发送GET请求 res = requests.get(url, headers=headers, timeout=10) res.encoding = "utf-8" print("✅ 网页请求成功,状态码:", res.status_code) # 网页解析 soup = BeautifulSoup(res.text, "html.parser") # 提取网页标题 title = soup.title.string print(f"\n📌 网页标题:{title}") # 提取所有超链接 print("\n📋 页面所有链接:") a_list = soup.find_all("a") for a in a_list: href = a.get("href") text = a.get_text().strip() if href and text: print(f"{text}:{href}") except Exception as e: print("❌ 爬虫请求失败:", e) if __name__ == "__main__": simple_spider()

四、核心知识点解析

  • 请求头伪装:添加User-Agent,避免被服务器识别为爬虫拦截

  • 编码设置:手动指定utf-8,解决中文乱码问题

  • 标签解析:find_all批量获取标签,get_text提取文本,get获取属性

  • 异常捕获:防止网络超时、链接失效导致程序崩溃


五、拓展方向

  • 爬取小说、图片、新闻列表数据

  • 新增数据保存到txt/csv文件

  • 增加分页爬取、延时防封禁机制

http://www.jsqmd.com/news/1071520/

相关文章:

  • 深度学习分布式训练
  • 劳动力规划:基于业务发展的人力需求预测
  • HarmonyOS NEXT开发必备:10个提升效率的ArkTS开发技巧
  • Printf可变参数使用
  • 大一下学期C++期末考试复试指南
  • 《全球芯片图鉴》8 锦锐科技
  • 嵌入式DSP开发进阶:掌握LCF预处理与预定义符号,优化内存与缓存配置
  • Java中多线程并发体系知识点汇总
  • Selenium与Playwright对照代码版:工程化自动化选型实战指南
  • VILA视觉大模型INT4量化实战:AWQ技术实现2.9倍推理加速
  • Flask/Jinja2 SSTI漏洞实战:从原理到RCE利用链完整解析
  • MATLAB原生支持Apple Silicon性能评测与迁移实战指南
  • OpenClaw:基于CLI与设备直连的AI工作流中枢
  • MATLAB GUI开发实战:从App Designer入门到独立应用部署
  • OpenClaw卸载指南:npm CLI工具清理全攻略
  • 麻辣龙虾:OpenClaw一键本地智能体安装包实战指南
  • DeepCodex本地中继:实现Codex与DeepSeek协议兼容的技术方案
  • 多智能体系统中的公平性挑战与解决方案
  • 未授权访问漏洞全解析:从原理到实战的24种场景与防御
  • MPC860 SCC以太网控制器:CSMA/CD协议实现与CAM接口应用
  • Burp Suite安装与配置指南:从零搭建Web渗透测试环境
  • Python虚拟环境实战:venv、conda与requirements.txt全解析
  • Windows本地AI开发环境:WSL2+Ubuntu24.04+Ollama+1panel+copaw全链路部署
  • Claude Code Mac安装指南:CLI工具本质与多模型配置实战
  • Windows本地部署飞书数字员工:PowerShell一键启用AI自动化
  • OpenClaw:可编程命令行技能调度器,统一管理网关与CLI自动化
  • MPC860 PCMCIA控制器寄存器详解与中断处理实战
  • MATLAB ODE求解:从醉汉游走到卫星轨道的动态系统建模与仿真
  • Claude Code v2.3.1本地运行Opus 4.8全指南
  • Spring AI vs Spring AI Alibaba:Java AI工程化选型指南