当前位置:首页>python>python爬虫

python爬虫

  • 2026-10-23 17:16:27
python爬虫

课程简介:本课程从零讲解网络爬虫核心原理、环境搭建、基础语法、实战爬取、反爬绕过、数据解析与存储,适合零基础小白、编程入门者。全程干货无废话,配套官方文档、工具下载、实战案例链接,可直接上手练习。 学习前置要求:无需编程基础,了解电脑基础操作即可 课程配套资源链接(全程可用)

  • Python官方下载:https://www.python.org/downloads/
  • PyCharm社区版免费下载:https://www.jetbrains.com/pycharm/download/
  • Requests官方文档:https://requests.readthedocs.io/
  • BeautifulSoup官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc/
  • XPath语法文档:https://www.w3school.com.cn/xpath/
  • 正则表达式在线测试工具:https://tool.oschina.net/regex/
  • 爬虫练习测试网站(无反爬、适合新手):http://books.toscrape.com/ 第一章 网络爬虫核心原理与认知 1.1 什么是网络爬虫 网络爬虫(又称网页蜘蛛、网络机器人),是一种按照既定规则,自动抓取互联网网页数据的程序。简单来说:模拟人浏览网页的行为,用代码自动获取网页文字、图片、链接、数据等信息。 日常场景:搜索引擎收录网页、电商价格监控、舆情数据采集、数据分析素材获取,底层都是爬虫技术。 1.2 爬虫工作完整流程
  1. 发送请求:代码向目标网站服务器发送网络请求(GET/POST),模拟浏览器访问
  2. 接收响应:服务器返回网页源代码(HTML、JSON、二进制数据等)
  3. 数据解析:从杂乱的源代码中提取需要的文字、图片、数字等有效数据
  4. 数据存储:将提取的数据保存到文本、Excel、数据库中
  5. 循环抓取:自动翻页、批量抓取全站数据 1.3 爬虫合法合规边界(必看)
  • 禁止抓取个人隐私数据、涉密数据、付费版权数据
  • 禁止高频暴力爬取,避免造成网站服务器瘫痪
  • 遵守网站robots协议,禁止爬取禁止公开访问的内容
  • 本课程所有案例仅用于学习练习,禁止用于商业违规用途 第二章 爬虫环境搭建(零基础一步到位) 2.1 安装Python 爬虫主流语言为Python,语法简单、库资源丰富,是爬虫首选。 下载地址:https://www.python.org/downloads/ 安装注意事项:勾选 Add Python to PATH(自动配置环境变量) 验证安装:打开电脑CMD,输入 python --version,显示版本号即安装成功。 2.2 安装代码编辑器PyCharm 下载地址:https://www.jetbrains.com/pycharm/download/ 选择Community(社区版)免费开源,足够日常爬虫开发使用。 2.3 安装爬虫核心库 打开CMD,依次输入以下命令,安装爬虫必备工具库:

网络请求核心库

pip install requests

网页解析库

pip install beautifulsoup4

xpath解析库

pip install lxml

数据存储Excel库

pip install openpyxl 第三章 爬虫基础:网络请求核心(GET/POST) 3.1 GET请求(最常用) GET请求用于获取网站公开数据,比如浏览网页、查看列表数据,是新手爬虫最常用的请求方式。 实战案例:获取测试网站网页源码 import requests

目标网址

url = “http://books.toscrape.com/”

发送GET请求

response = requests.get(url)

设置编码,解决中文乱码

response.encoding = “utf-8”

打印网页源码

print(response.text)

打印响应状态码 200=成功 404=不存在 500=服务器错误

print(“状态码:”, response.status_code) 3.2 请求头Headers(解决基础反爬) 很多网站会拦截裸代码请求,需要添加 User-Agent 模拟浏览器访问,伪装成真人浏览。 带请求头完整代码 import requests

url = “http://books.toscrape.com/”

请求头伪装浏览器

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” }

response = requests.get(url, headers=headers) response.encoding = “utf-8” print(response.text) 3.3 POST请求 POST请求用于提交数据,比如登录、搜索、表单提交,适合需要传参交互的爬虫场景。 import requests

url = “测试接口地址”

需要提交的参数

data = { “key1”: “value1”, “key2”: “value2” }

response = requests.post(url, data=data, headers=headers) print(response.text) 第四章 核心数据解析(三大解析方式全覆盖) 4.1 BeautifulSoup解析(简单易懂,新手首选) 用于解析HTML网页,精准提取标题、文本、链接、图片地址。 实战:提取书籍标题 import requests from bs4 import BeautifulSoup

url = “http://books.toscrape.com/” 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”}

response = requests.get(url, headers=headers) response.encoding = “utf-8”

解析网页

soup = BeautifulSoup(response.text, “lxml”)

批量提取所有书籍标题

book_list = soup.select(“article h3 a”) for book in book_list: title = book.get(“title”) print(“书籍标题:”, title) 4.2 XPath解析(精准高效,企业常用) XPath是网页定位语法,定位精准、速度快,适合复杂网页解析,搭配上方W3school链接可自学全部语法。 4.3 正则表达式解析(通用万能) 适合提取不规则文本、数字、手机号、链接等任意内容,可使用在线正则测试工具调试规则。 在线调试链接:https://tool.oschina.net/regex/ 第五章 爬虫数据存储(文本+Excel) 5.1 保存为TXT文本

追加写入数据

with open(“书籍数据.txt”, “a”, encoding=“utf-8”) as f: f.write(title + “\n”) 5.2 保存为Excel表格 适合规整化数据,方便统计、查看、二次使用,是爬虫最常用的存储方式。 第六章 基础反爬绕过与进阶技巧 6.1 常见基础反爬与解决方案

  • UA拦截:添加浏览器User-Agent请求头
  • 访问频率限制:添加延时 time.sleep(1-3) 模拟人工浏览间隔
  • 中文乱码:手动设置编码为utf-8
  • 403禁止访问:补充完整请求头(Referer、Cookie等) 6.2 延时爬虫代码示例 import time

每次请求暂停2秒,防止封IP

time.sleep(2) 第七章 完整实战案例(单页批量爬取) 功能:批量爬取测试网站书籍标题、价格、图片链接,保存至本地 import requests from bs4 import BeautifulSoup import time

url = “http://books.toscrape.com/” 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” }

发送请求

res = requests.get(url, headers=headers) res.encoding = “utf-8” soup = BeautifulSoup(res.text, “lxml”)

批量抓取数据

books = soup.find_all(“article”, class_=“product_pod”) for book in books: title = book.h3.a[“title”] price = book.find(“p”, class_=“price_color”).text print(f"书名:{title},价格:{price}") time.sleep(0.5) 第八章 课程总结与进阶学习方向 8.1 本节课核心知识点

  • 爬虫工作原理与合规规范
  • Python爬虫环境全套搭建
  • GET/POST网络请求实战
  • 三大数据解析方式
  • 数据本地存储、基础反爬绕过
  • 完整单页爬虫实战 8.2 进阶学习方向
  • 多线程/多进程高速爬虫
  • IP代理池绕过IP封禁 XPath教程:https://www.w3school.com.cn/xpath/ 正则测试工具:https://tool.oschina.net/regex/ 爬虫练习网站:http://books.toscrape.com/

最新文章

随机文章