使用Scrapy和Fiddler爬取雪球app基金频道新闻列表数据

一.安装配置Fiddler

Fiddler 是一个 HTTP 协议调试代理工具,是由 C# 写出来的,它包含一个简单却功能强大的基于 JScript.NET 事件脚本子系统,灵活性极高,并且能够使用 .net 框架语言进行扩展,可以记录并检查所有客户端和服务器之间的 HTTP 和 HTTPS 请求,允许你监视、设置断点、甚至是修改输入输出数据,也可以进行请求构造、设置网络丢包和延迟进行 APP 弱网测试等。

 Fiddler下载官方网站843add35dfd344d4a56a8023dd448c35.png

Web Debugging Proxy and Troubleshooting Tools|Fiddler

Fiddler 的原理是以 Web 代理服务器的形式进行工作的,代理(Proxy)就是在客户端和服务器之间设置一道关卡,对 Web 客户端来说,Fiddler(代理)扮演的是服务器的角色,接受请求报文,返回相应报文;对于 Web 服务器来说,代理扮演的是客户端的角色,发送 Web 请求报文,接受 Web 相应报文 

二.Fiddler简单介绍

80b4a930268746b68202d1bc8eb7498a.pngFile菜单

a789a35426484b688819cc391b057204.png

Capture Traffic(或 F12):是个开关,可以控制是否把 Fiddler 注册为系统代理。当把 Fiddler 注册为系统代理时,所有依赖于 WinINET 代理的应用(如 IE 浏览器和其他浏览器)会把 Web 请求发送给 Fiddler
New Viewer:是用来打开一个新的 fiddler 窗口
Load Archive:用于重新加载之前保存的 fildder 文档
Save:保存 session 会话
Import Sessions:导入 session 会话
Export Sessions:导出 session 会话
Exit:退出

Edit 菜单:

120249541a66465bb6bdd0d186aa4fc7.png

Copy:下面的几个子菜单分别支持复制选中 Session 的某些信息
Remove:下面的子菜单分别支持从 Web Session 列表中删除全部、选择或未选中的 Session
Select All(或 Ctrl + A):命令选择 Sessions 列表的所有内容
Paste as Session:命令会基于剪贴板上的内容,生成一个或多个模拟的 Web Session
Find Session…(或 Ctrl + F):命令会打开 Find Session 窗口,搜索捕获到的数据流

Rules菜单:

94d715a46b394458a6c96e7ee5e202f6.png

Hide Image Request:触发器控制是否在 Web Session 列表中显示图像类 Session
Hide CONNECTS:触发器控制是否在 Web Session 列表中显示使用 CONNECT 请求方法的 Session
Automatic Breakpoints:子菜单控制 Fiddler 是否会自动在 Before Requests 或 After Responses 处设置断点。Ignore Image 触发器控制这些断点是否作用于图片请求
Customize Rules…(或 Ctrl + R):菜单命令会使用配置的脚本编辑器打开当前的 FiddlerScript 文件
Require Proxy Authentication:如果选中 Require Proxy Authentication 菜单项,所有未提交 Proxy-Authorization 请求头的请求会返回 HTTP/407 响应,要求客户端安装证书,该规则可以用于测试 HTTP 客户端,确保这些规则在有证书的客户端服务器上可以正常工作
Apply GZIP Encoding:如果选中 Apply GZIP Encoding 菜单项,只要请求包含具有 gzip 标识的 Accept-Encoding 请求头,就会对除了图片以外的所有响应使用 GZIP HTTP 进行压缩。该规则用于测试使用 GZIP 选项支持的客户端是否真正对内容进行压缩。该选项还支持性能调优,并且计算传输的压缩后的数据流的字节数
Remove All Encoding:如果选中 Remove All Encoding,会删除所有请求和响应的 HTTP 内容编码和传输编码
Hide 304s:选项会隐藏包含 HTTP/304 Not Modified 状态的响应的所有 Session
Request Japanese Content:选项会把所有请求的 Accept-Encoding 请求头设置或替换为 ja 标识,表示客户端希望响应以日语形式发送
User-Agents:子菜单支持把所有请求的 User-Agent 请求头设置或替换成指定值
performance:子菜单提供影响 Web性能的简单选项

Tools 菜单:

2b67ea3b1e5e47938ef1bf6dfc7058bc.png

Options…:打开 Fiddler Options 窗口,针对 fiddler 的设置
WinINET Options…:打开 IE的Internet Options 窗口,windows 的 ie 设置
Clear WinINET Cache(或 Ctrl + Shift + X):选项会清空 IE 和其他应用中所使用的 WinINET 缓存中的所有文件
Clear WinINET Cookies:选项会清空 IE 和其他应用中所发送的 WinINET Cookie.Session 的 Cookies 还是保持不变
TextWizard…(或 Ctrl + E):对文本进行编码和解码的工具
Compare Session(或 Ctrl + W):选项只有当选中 Web Session 列表中的两个 Session 时才有效。
Reset Script:重置脚本
Sandbox:打开 http://webdbg.com/sandbox/
View IE Cache:打开 IE 缓存窗口
Win8 Loopback Exemptions:windows 使用了一种叫做 “AppContainer” 的隔离技术,使得一些流量无法正常捕获,在 fiddler 中点击 Win8 Loopback Exemptions 按钮可以解除这个诅咒,这个与工具栏中的 WinConfig 功能是一致的
New Session Clipboard…:打开一个 Session 的剪贴板
HOSTS…:选项会打开 Fiddler 的 Host Remapping 工具

View 菜单:

12fd2d09266c420c80a0fef84d724a4f.png

Show Toolbar:控制 Fiddler 工具栏是否可见,默认是勾选的
Default Layout:默认 layout,session 在左,请求和响应在右边的上下处(界面布局)
Stacked Layout:session 在上,请求在下方(界面布局)
Wide Layout:session 在上,请求和响应在下方的左右处(界面布局)
Tabs:打开标签页面,其中有三个标签可以打开,分别是
Preferences:fiddler 偏好属性
AutoSave:fiddler 自动保存的设置
APITest:api 的测试
Statistics(或 F7):查看一个请求的统计数据
Inspectors(或 F8):嗅探,用来查看会话的内容,上面是请求,下面是响应
Composer(或 F9):设计构造在 Composer 中进行请求的修改,可以把 session 框中的数据先清除,然后点击 Composer 中的 Excute 按钮来发送请求,请求出现在 session 框中
Minimize to Tray(或 Ctrl + M):可以最小化 Fiddler 到系统托盘中
Stay On Top:保持置顶
Squish Session List(或 F6):控制 Web Session 列表是否水平收缩
AutoScroll Session list:自动滚动会话列表,默认是勾选此项的,勾选此项后,session 框中的每出现新的 session,session 框中就会不断向下滚动,若不勾选此项,就很方便具体某一个 session 的定位,即使出现了新的 session 也不会自动向下滚动
Refresh(或 F5):刷新功能

Help 菜单:

c4e8ec9cc69742d6bfb584930735275b.png

Welcome Screen:回到主页面
Help:进入 fiddler 的帮助的网页中
Get Fiddler Book…:fiddler book 的网页
Discussions:fiddler 的讨论网页,这个需要魔法上网
HTTP References:进入 http 参考文献相关网站
Troubleshoot…:会捕获所有请求,对于哪些被过滤的请求用删除线表示出来并给出原因,使用时候会打开一个网页
Get Priority Support…:购买最新支持
Check for Updates…:检查软件更新情况
Send Feedback…:意见反馈
About:关于当前 fiddler 的相关信息

列图标解析:

935e158ff396418e9ebc830ded70e531.png

三.用手机app进行抓包

首先得保证手机和电脑在同一个局域网(连接着同一个 WIFI),先查看 Fiddler 所在电脑得 IP 地址,可以直接把鼠标悬停在工具栏中的 Online 查看()

c665f085f4ba41b4b069b7956e8e0758.png

或者 Win + R 调出 windows 运行窗口 输入 cmd 再输入 ipconfig 查看 IP 地址

f44af937ff6745beaaff4e34504483dd.png

设置 Fiddler 允许远程连接,点击 Tools 选择 Options...,再选中 Connections

4e5ebc919583488487e7520ceb7085f8.png

勾选 Allow remote computers to connect 允许远程计算机连接到 Fiddler

f11e98437eb24521b40dacfd7d79425d.png

注意:Fiddler Classic listens on port 后面是 Fiddler 的默认端口 8888,一般不做修改

接着就是为手机配置代理,打卡手机的 设置,找到 WLAN 配置

2e6c866e5534417a9b2feca7d1b2bf96.png

 选择当前正连接的 WIFI,,点击查看 WIFI 的详细信息。如下图:

 

78ed84cc6ab44ce0b9b0a02ccbdc0a94.png

点击 WIFI 的代理,选择 手动,然后设置代理的 IP 和端口。其中,IP 地址为 Fiddler 所在机器的 IP 地址,端口在 Fiddler 中配置的 8888,如下图: 

da17ef4e83fe44d486b8e888083e5a95.png

 最后为手机下载安全证书,使用收集浏览器访问 Fiddler 服务,根据上图可知,Fiddler 的端口为 8888(访问地址为 Fiddler 所属主机的 IP 地址加 Fiddler 端口),例如:192.168.1.3:8888。访问之后如下图:

e771f10deadc41a5b1957b270547d655.png

点击 FiddlerRoot certificate 链接按钮,下载 Fiddler 的根证书。如下图:

 

350ff199167d49d1956ed741ba153220.png

打开浏览器的下载管理器,点击刚刚下载的 Fiddler 证书,安装证书。将该证书命名为 Fiddler。如下图

f0a042b79e6940fab8fa0a617054cf80.png

证书安装完成后,可以在 系统设置 中搜索 凭据(或者 CA 证书,不同手机会有点差别),打开 信任的凭据,找到刚刚安装的 Fiddler 证书。Fiddler 证书信息如下图:

 

2bb804b18fde4465a9ed5695a42720cf.png

以上就是开启手机 APP 抓包的全部设置了,可以打开一个 APP 进行验证。

注意一点的是,安卓手机在7.0版本以上就需要root手机,不然代理完网络后进入有的app会没有网络,ios的设备则可以进行。 

 

 

  • 20
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值