python - 爬虫简介

什么是爬虫?
  1. 模拟浏览器对网站服务器发送请求
  2. 解析服务器返回的响应数据,并保存数据
爬虫能获取哪些数据?
  1. 原则上所有可以通过浏览器获取的数据都可以爬取
  2. 爬虫也只能获取爬取浏览器可以正常获取的数据
爬虫的应用场景?
  1. 数据分析 (如电影票房、股票信息、商品销量等)
  2. 舆情监控(如微博、论坛等)
  3. 搜索引擎刷浏览播放量等(如各类自媒体账号)
  4. 抢票投票(对购票、投票接口发送请求)
  5. 网络安全(短信轰炸- 多个网站发送验证码)
为什么会有反爬?
  1. 防止有价值的数据被恶意获取
  2. 封锁垃圾流量,降低服务器的压力和运行成本
爬虫与反爬的对抗?
  1. 部分数据需要登录才能获取
  2. 通过验证码甄别真人与爬虫
  3. 监测同一IP 地址单位时间内的请求量
  4. 请求需要携带特定的数据
  5. 响应数据被加密,需要特定的算法解密
学习内容
  • 如何爬取网页数据? (如何对服务器发送请求,获取源文件)
    • Requests 模块(对服务器发送请求,获取数据 )
    • 模拟真实浏览器状态
    • 设置 Proxy 代理IP(避免单个ip发送过快,被服务器认为是爬虫)
  • 如何提取关键数据?(如何在源文件中获取有用的数据)
    • 正则表达式
    • XPath 表达式
  • 如何储存提取到的数据?
    • MongoDB 数据库
  • Scrapy 框架爬取海量数据
    • 集成发送请求,数据解析,数据保存
    • Scrapy 结合 MongoDB 储存数据
  • Scrapy-Redis 分布式爬虫(多个机器共同爬取一个任务)
    • Redis 数据库
    • Scrapy-Redis 框架
  • 模拟登陆
    • 登陆原理: Cookie 和 Session
    • Selenium 浏览器自动化
    • 爬取需要登陆才能获取的数据
  • 验证码识别
    • OpenCV 计算机视觉
    • OCR 文字识别引擎
    • EasyDL 机器学习云服务
  • 反爬与反反爬
    • 破解文字加密反爬
    • 各类加密算法:MD5,SHA256,AES,RSAc
    • JS逆向分析:还原网站的加密流程
  • 拓展内容
    • 数据分析: Pandas 模块
    • 高频面试题目
爬虫合法么?
  • 作为技术本身在法律中是不被禁止的
  • 爬虫能获取的数据都是能通过浏览器正常获取的公开数据
  • 爬虫只是更快速的获取大量数据
有法律风险的情况?
  • 结合爬虫对网站服务器进行黑客攻击
  • 通过获取的数据谋取经济利益
  • 通过爬虫进行不当的商业竞争
  • 爬取的数据侵犯了对方的版权或隐私权
如何规避法律风险?
  • 切勿对网站服务器进行大规模的请求轰炸
  • 切勿对爬取到的数据进行公开传播或售卖
  • 切勿对涉及知识产权和用户隐私的数据进行爬取
相关推荐
深蓝电商API37 分钟前
爬虫IP封禁后的自动切换与检测机制
爬虫·python
喵手2 小时前
Python爬虫实战:公共自行车站点智能采集系统 - 从零构建生产级爬虫的完整实战(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集公共自行车站点·公共自行车站点智能采集系统·采集公共自行车站点导出csv
喵手2 小时前
Python爬虫实战:地图 POI + 行政区反查实战 - 商圈热力数据准备完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·地区poi·行政区反查·商圈热力数据采集
芷栀夏3 小时前
从 CANN 开源项目看现代爬虫架构的演进:轻量、智能与统一
人工智能·爬虫·架构·开源·cann
喵手18 小时前
Python爬虫实战:HTTP缓存系统深度实战 — ETag、Last-Modified与requests-cache完全指南(附SQLite持久化存储)!
爬虫·python·爬虫实战·http缓存·etag·零基础python爬虫教学·requests-cache
喵手18 小时前
Python爬虫实战:容器化与定时调度实战 - Docker + Cron + 日志轮转 + 失败重试完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·容器化·零基础python爬虫教学·csv导出·定时调度
喵手21 小时前
Python爬虫实战:全站 Sitemap 自动发现 - 解析 sitemap.xml → 自动生成抓取队列的工业级实现!
爬虫·python·爬虫实战·零基础python爬虫教学·sitemap·解析sitemap.xml·自动生成抓取队列实现
iFeng的小屋21 小时前
【2026年新版】Python根据小红书关键词爬取所有笔记数据
笔记·爬虫·python
Love Song残响1 天前
揭秘Libvio爬虫:动态接口与逆向实战
爬虫
喵手1 天前
Python爬虫实战:构建招聘会数据采集系统 - requests+lxml 实战企业名单爬取与智能分析!
爬虫·python·爬虫实战·requests·lxml·零基础python爬虫教学·招聘会数据采集