Skip to content

university-code-set/spider-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

爬虫学习与实践

从零开始学习 Python 网络爬虫的项目,记录了从基础到进阶的完整学习路径,涵盖多种主流网站的数据抓取实战。

技术栈

类别 技术
请求 requestsaiohttpseleniumwebsocket-client
解析 lxml (XPath)、beautifulsoup4rejsonpath
JS 逆向 execjspycryptodome (RSA)、MD5、base64
并发 concurrent.futuresasyncioCelery + Redis
存储 pymysql (MySQL)、redis、CSV
框架 Scrapy(入门)

学习路线

第一阶段:基础入门

  • 初识爬虫 — HTTP 协议、请求与响应基础
  • requests 模块 — 百度贴吧图片抓取实战
  • 数据解析 — XPath、BeautifulSoup4、正则表达式
  • 数据库 — MySQL / MongoDB 基础操作

第二阶段:工程化

  • 多线程 — 生产者消费者模式、线程池
  • 自动化 — Selenium 浏览器自动化
  • Scrapy 框架 — 项目搭建、动态数据、图片下载

第三阶段:进阶与反爬

  • JS 逆向 — 有道翻译、网易云音乐、QQ 音乐、小红书、猫眼电影
  • 分布式爬虫 — Redis + Scrapy 分布式
  • 异步编程 — asyncio + aiohttp 协程爬虫
  • m3u8 流媒体 — 腾讯视频、A站、B站视频下载

实战项目

  • TapTap — 游戏排行榜多线程爬取
  • 豆果美食 — 菜谱数据抓取
  • 全国建筑数据 — JS 逆向 + 数据获取
  • B站视频 — 搜索、下载、音视频合并
  • 快手视频 — 批量无水印下载
  • 每日热搜 — 百度、微博、知乎、B站、抖音热搜聚合

项目结构

爬虫/
├── Reptile/              # 自建爬虫基础库(requests 封装、CSV 存储)
├── spider/               # 爬虫工具集(随机 UA、m3u8 下载)
├── fastspider/           # 自研爬虫框架(配置层、请求层、数据库层)
├── select_course/        # 自动选课系统(asyncio + Celery)
├── 京淘购物车秒杀系统/    # 京东/淘宝秒杀
├── 网易云音乐js逆向/      # 网易云音乐 JS 逆向
├── 小红书评论js逆向/      # 小红书 JS 逆向
├── 异步编程-异步协程爬虫/  # asyncio 学习笔记
└── 爬取b站视频/           # B站视频下载器

环境要求

  • Python 3.10+
  • MySQL 5.7+
  • Redis 6.0+

安装依赖:

pip install requests lxml beautifulsoup4 pymysql redis selenium aiohttp aiofiles celery pycryptodome fake-useragent execjs websocket-client jsonpath

免责声明

本项目仅供学习研究使用,请勿用于非法用途。爬取数据时请遵守网站 robots.txt 协议及相关法律法规。


📅 学习时间:2022 年 7 月 — 2023 年

About

爬虫学习

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors