K.I.S.S---Keep IT Simple,Stupid!    人生苦短,我用Python

Python爬虫学习路线图

 
分类: 问答 标签: 2023年3月16日
简介:最近经常有小伙伴咨询,爬虫到底该怎么学,有什么爬虫学习路线可以参考下,萝卜作为非专业爬虫爱好者,今天咱们就来分享下,对于我们平时的基础爬虫或者小规模爬虫,应该掌握哪些技能、需要如何学起!

作者:周萝卜
链接:https://juejin.cn/post/7130217490759548935
来源:稀土掘金
 

Python 基础

由于本篇主要介绍 Python 爬虫学习路线,所以对于 Python 基础知识,仅仅提取了最为基础的部分,应付基础爬虫完全够用了,当然,对于底层基础,肯定是掌握的越多、越牢固越好~

  • 环境搭建
    • Python安装
    • 开发工具 - PyCharm,VS Code
  • 变量
    • 定义变量
    • 命名规则
    • 基本数据类型
  • 基本数据结构
    • 字符串
    • 列表
    • 字典
    • 集合
    • 元组
  • 流程控制
    • 条件
    • 循环
  • 函数
    • 调用函数
    • 定义函数
    • 函数参数
    • lambda 函数
  • 面向对象编程
    • 类和对象
    • 访问限制
    • 装饰器

数据采集与解析

  • HTTP 基本原理
    • URI 和 URL 统一资源定位符
    • HTTP&HTTPS 请求与响应
    • HTML 组成原理
  • WEB 基本原理
    • JavaScript&HTML&CSS
    • 节点树与节点
    • Web 加载原理
    • 静动态 Web 页面
  • Socket 库
    • 基于 socket 协议的爬虫
  • Requests 库
    • requests 库的使用
    • cookie 与 session
    • 模拟登录
    • 请求头模拟
    • IP 代理
  • 正则表达式
    • re 模块的使用
    • 基本字符串、数字等匹配规则
    • 贪婪与非贪婪匹配
  • Xpath
    • 执行原理
    • 节点操作
    • 元素操作

多种采集方式

  • 同步采集
    • requests
  • 异步采集
    • aiohttp
    • aiofiles
  • Selenium
    • 环境搭建 - webdriver
    • 元素选择 - (id,css,class,xpath)
    • 模拟登录
    • 隐藏 selenium 特征
  • AJAX
    • Ajax 原理
    • Ajax 请求与响应解析
  • Pyppeteer
    • 环境安装
    • 模拟点击
    • 执行 JS 代码

存储知识

  • 本地文件
    • os 库
    • open 文件
    • 读写 Excel
    • 读写 CSV
  • MySQL
    • 表结构设计
    • 同步/异步写入 MySQL
  • Redis
    • 读写操作
    • 基本数据类型与选择
  • MongoDB
    • 单一写入
    • 批量写入
  • 与 Pandas 结合
    • 存储成 Pandas 数据结构
    • Pandas 基本操作

中间人代理

  • Charles
    • 安装与配置
    • 数据拦截
    • 安卓模拟器
  • Mitmproxy
    • 脚本编写
    • 数据截取
    • 代理响应
  • HttpCanary
    • 基本使用

爬虫框架

  • Scrapy
    • 环境搭建
    • 组件拆解
    • 通用爬虫
    • 分布式爬虫 - (scrapy-redis 使用,scrapy-redis 调度器)
  • Crawley
  • Selenium
    • 分布式部署
  • PySpider

反爬虫知识

  • 信息校验型
    • 模拟登录
    • Cookie 机制
    • 用户代理
    • 签名验证机制
    • header 机制
  • 动态渲染型
    • 页面异步加载
  • 文本混淆型
    • 图文混淆 - 关键信息以图片形式给出
    • 字体反爬 - (反爬原理,编码破解)
  • 特征识别型
    • 访问频率限制 - (IP 代理池,搭建个人 IP 代理池)
    • Selenium 特征检测 - 隐藏 Selenium 特征
  • 验证码
    • 验证码原理
    • 图文验证码
    • 点选验证码
    • 滑动验证码
    • 其他变态验证码
  • JS 混淆
    • JS 逆向

多终端爬虫

  • WEB 采集
  • APP 采集
  • 小程序采集
  • 数据去重
  • 断点采集
  • 增量采集

以上就是整理的基础爬虫所需的学习路线,当然鉴于个人水平有限,难免有不足之处,还望不吝指教!

相关法律法规

  • 遵守 Robots
  • 控制访问速率
  • 敏感信息不碰触
  • 国家安全大于天
  • 获取的数据不进行非法盈利
  • 其他违反法律法规的动作

基本上做到以上几点,我们的爬虫就是安全的,不要过度妖魔化爬虫,当然网络更不是法外之地,要做一个合格的遵纪守法好公民!

尾声

以上就是萝卜断断续续写了几天,结合个人经验,同时也参考了网上大量的视频、文章总结而成的 Python 爬虫学习路线,确实非常的不容易,如果大家觉得满意请务必点个赞 + 在看 支持下。

 

 

 



注:当前文章会不定期进行更新。如果您对本文有更好的建议,有新资料推荐, 可以点击: 欢迎分享优秀网站
这个位置将来会放广告

我想等网站访问量多了,在这个位置放个广告。网站纯公益,但是用爱发电服务器也要钱啊 ----------狂奔的小蜗牛