上节内容回顾:【爬虫基础】第一部分 网络通讯 P1/3-CSDN博客
【爬虫基础】第一部分 网络通讯-Socket套接字 P2/3-CSDN博客
【爬虫基础】第一部分 网络通讯-编程 P3/3-CSDN博客
【爬虫基础】第二部分 爬虫基础理论 P1/3-CSDN博客
【爬虫基础】第二部分 爬虫基础理论 P2/3-CSDN博客
爬虫相关文档,希望互相学习,共同进步
风123456789~-CSDN博客
前言
1.知识点碎片化:每个网站实现的技术相似但是有区别,要求我们根据不同的网站使用不同的应对手段。主要是常用的一些网站爬取技术。
2.学习难度:入门比web简单,但后期难度要比web难,在于爬虫工程师与网站开发及运维人员的对抗。比如你写了爬虫但是被网站运维人员发现后添加反爬,那么就要解决反爬。即平台更新换代,爬虫策略需要实时更新。
3.学习特点:以摸个网站爬虫为讲解对象,即一个技术点的案例。
4.后续发展:要求掌握的东西多,工作中根据工作需要涉及到更多没有接触的知识。
5.法律层面:爬虫相关工作属于灰色地带,目前国内现行法律对于爬虫相关评判还没有明确制度。
6.建议:好记性不如烂笔头,建议多找网站进行爬取联系,同时做好笔记。
1.概述
爬虫通常会遵循一定的规则和算法,以确保能够高效地遍历互联网并收集到所需的数据。
本节章节:
第一节 爬虫理论原理
第二节 http协议
第三节 chrome浏览器抓包说明 (本文)
第一节 爬虫理论原理 见:【爬虫基础】第二部分 爬虫基础理论 P1/3-CSDN博客
第二节 http协议 见: 【爬虫基础】第二部分 爬虫基础理论 P2/3-CSDN博客
2.进入开发者模式
开发者工具使用:以Google Chrome浏览器为例,Windows和Linux平台按F12, macOS选择 视图 ->开发者 ->开发者工具或直接使用alt+command+i快捷键,另一通用操作是在网页右击选择检查。
右击检查-开发者工具-network,刷新后列出的是刷新时访问这个网络地址所发送的所有请求。随便点击一个网络包,header时,找到请求头。重点观察请求头部分。
常用标签选项说明
Elements:元素,用于查看或修改HTML标签
Console:控制台,执行js代码,显示脚本输出的调试信息
Sources:源代码,查看静态资源文件,断点调试js代码
Network:网络,查看http协议的通信过程,http请求的详细信息,如请求头、响应头等
3. chrome浏览器抓包说明 

知识点:
1.headers请求头说明
2.无痕窗口
3.开发者工具工作簿(网络)
1.preserve log
2.filter过滤
3.类别区筛选
4.放大镜搜索
5.search搜索
6.console控制台
7.sources来源
8.element元素
3.1 headers 请求头说明
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cache-Control: max-age=0
Connection: keep-alive
Cookie: BIDUPSID=D18E0CF343C1DC46DC0CA99A16BE18C3; PSTM=1682317572; BD_UPN=12314753; newlogin=1; BAIDUID=35D056484E32488A12B4E189D11FA2CE:FG=1; BAIDUID_BFESS=35D056484E32488A12B4E189D11FA2CE:FG=1; COOKIE_SESSION=15_8_6_8_5_11_0_0_6_4_30_3_2781_82656_3_0_1682604006_1682590568_1682604003%7C9%2382625_24_1682590530%7C6; ZFY=9ZFyWo7Lo:BUAL:ASW4KskwxGRSb0pDGxJPrZe1i0sXKc:C; B64_BOT=1; ariaDefaultTheme=undefined; RT="z=1&dm=baidu.com&si=099661dc-c724-4b0c-9509-1fe74c89ab54&ss=lh0aynxo&sl=1&tt=1rl&bcn=https%3A%2F%2Ffclog.baidu.com%2Flog%2Fweirwood%3Ftype%3Dperf&ld=2js&nu=4u4ak2th&cl=74vq&ul=9fq9&hd=9fqp"; BA_HECTOR=8ha0a1a4a5258h8k002k212t1i4pokq1m; BDORZ=FFFB88E999055A3F8A630C64834BD6D0; channel=www.2345.com; baikeVisitId=831ddf12-d1d1-425e-aa33-fb8119db1e31; ab_sr=1.0.1_Y2U3YzkxYjRmN2Q2MTFkMjhiZTVlZTU3NDFhYjQ0NTBjNDhlNWFmM2VhNGUzNDg1NzZkZGIwNTFmNWM5ODY5NDQ3YjMxMjc4NWNmM2Y3ODhiNmUxMGQ0MTE0NDM2NDgwODM2OTIyYmI5NzJmYTJhYTNiMDJiY2YwN2I0ODc4ODFmZDg4Yjg5N2E0ZDRjNmM1MDVjN2QyOWZiMDBlODc4NQ==; BD_HOME=1; H_PS_PSSID=38516_36545_38529_38469_38538_38468_38486_37923_37709_26350_38544
Host: www.baidu.com
sec-ch-ua: "Chromium";v="112", "Google Chrome";v="112", "Not:A-Brand";v="99"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?1
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36
说明:
user_agent:浏览器的身份,目的:欺骗服务器
Cookie:用户(浏览器)的缓存,缓存的用户信息(身份信息)或者是浏览记录信息
身份信息在库中,有一部分是记录权限信息、加密信息等权限机制Host:服务器的域名
referer:来源,目的是告诉对方服务器,本请求的来源。
3.2 无痕窗口
(1)进入无痕模式
在浏览器,点击右键 或者浏览器右上角,点击“打开新的无痕模式窗口”,即可进入。
(2)说明
Chrome 不会保存:
1.您的浏览记录
2.Cookie 和网站数据
3.在表单中填写的信息
重点:
无痕模式下:
对地址访问成功,代表该地址的headers只需要一个ua一个键值对
通过无痕模式来判断地址的访问需要那些headers的键值对非无痕模式下:
打开一个新的浏览器窗口,访问地址,能够访问,说明header中需要ua,cookie即可除上述操作,地址还是不能够访问,则需要携带referer字段
3.3.开发者工具工作簿(网络)
(1)进入
如浏览器进入开发者模式后,输入网址 https://www.2345.com/tg36612.htm
(2)filter过滤
(3)功能区
A. preserve log
一般情况下,每刷新一次网址,会重新加载,不会保留之前的包。
但如果勾上“preserver log”, 打开新网址时依然会保留之前的抓包情况。
如下: 打开百度 -》抓包后 --》同页面打开淘宝 --》勾选了后发现百度的包依然在
B. filter过滤
将网址中的一部分输入过滤器,快速找到网址中包含内容的网址。
目的:过滤抓包区域的包,规则自定义
如:tg36612.htm
说明:一般访问网址时,浏览器的包会在第一个位置
C.类别区筛选
如下图:
说明:
all: 显示所有包
XHR:异步加载的包显示位置js:js文件的请求
CSS:CSS文件的请求
img:对图片的请求WS: 实时爬虫
3.4.放大镜搜索
点击放大镜,左边输入框,可进行“全局搜索”。其实搜索了非js的包。
3.5.search搜索
点击右上角,点击三个点,即可打开 seach 搜索。
输入搜索内容,可进入全局搜索。
3.6.console控制台
有两个位置:1)seach 左边的console 2)开发者工具中提供的tab
控制台的作用:为了执行前端的代码。
3.7.sources来源
源代码,查看静态资源文件,断点调试js代码
帮助进行代码的断点调试,主要js 断点调试。
# 代码的调试观察
# js断点调试
3.8.element元素
代表当前网页显示给你的所有数据的标签结构。
1)同步加载:在浏览器上你能观察到你要采集的数据在浏览器的地址的响应中,找到了你想采集的数据,同步加载
2)异步加载:在浏览器上你能观察到你要采集的数据在浏览器的地址的响应中,没有找到你想采集的数据,异步加载
3.9 Network 的主要信息
Headers:http的头信息
Response:http的响应体信息
General:主要信息
Response Headers:http响应头信息
Request Headers:http请求头信息
get 请求报文:
post请求报文:
注意:法律和道德问题
在使用爬虫时,需要遵守一定的法律和道德准则,尊重网站的隐私政策和使用条款,确保合法和负责任地使用爬虫技术。
今天先到这里吧~~
预知后事如何,且听下回分解~ ok
项目管理--相关知识
项目管理-项目绩效域1/2-CSDN博客
项目管理-项目绩效域1/2_八大绩效域和十大管理有什么联系-CSDN博客
项目管理-项目绩效域2/2_绩效域 团不策划-CSDN博客
高项-案例分析万能答案(作业分享)-CSDN博客
项目管理-计算题公式【复习】_项目管理进度计算题公式:乐观-CSDN博客
项目管理-配置管理与变更-CSDN博客
项目管理-项目管理科学基础-CSDN博客
项目管理-高级项目管理-CSDN博客
项目管理-相关知识(组织通用治理、组织通用管理、法律法规与标准规范)-CSDN博客
Oracle其他文档,希望互相学习,共同进步
Oracle-找回误删的表数据(LogMiner 挖掘日志)_oracle日志挖掘恢复数据-CSDN博客
oracle 跟踪文件--审计日志_oracle审计日志-CSDN博客
ORA-12899报错,遇到数据表某字段长度奇怪现象:“Oracle字符型,长度50”但length查却没有50_varchar(50) oracle 超出截断-CSDN博客
EXP-00091: Exporting questionable statistics.解决方案-CSDN博客
Oracle 更换监听端口-CSDN博客