初学 网络抓包,完善c# 爬虫程序。

前面弄了一个简单的c#爬虫,但是有些数据在web上看不到,仅仅属于桌面应用程序或者手机端app。查询资料学习网络抓包,看能不能从应用程序中解析出需要的数据。利用fiddler工具能够抓包的条件,第三方应用程序使用:IE Chrome等浏览器程序使用WinInet库进行HTTP/HTTPS通信程序内嵌Webbrowser如果程序没有使用Windows提供的WinInet库进行HTTP...
摘要由CSDN通过智能技术生成

前面弄了一个简单的c#爬虫,但是有些数据在web上看不到,仅仅属于桌面应用程序或者手机端app。

查询资料学习网络抓包,看能不能从应用程序中解析出需要的数据。

利用fiddler工具能够抓包的条件,第三方应用程序使用:

  1. IE Chrome等浏览器
  2. 程序使用WinInet库进行HTTP/HTTPS通信
  3. 程序内嵌Webbrowser

如果程序没有使用Windows提供的WinInet库进行HTTP通信,而是自带了一个库,比如VC程序使用libcurl,JAVA程序使用JDK中的URLConnection或第三方OkHttp,C#使用System.Net.Http等,这些库在程序内部实现了HTTP包的封装与拆解,那么最终他们将直接调用操作系统的socket api发送数据,操作系统当然就没法给他们设置。也就无法抓包。

可以用 depends]工具查看第三方应用程序是否依赖WININET.DLL,也可以用VisualStudio自带的工具 spy++]查看第三方应用是否内嵌Webbrowser控件,如果有内嵌,则Webbrowser中的内容可以用Fiddler抓包。

不满足上述条件的第三方程序,没法用Fiddler抓包,所以创造条件去抓包。

Fiddler抓包的原理是在本机的8888端口开启了HTTP/HTTPS代理,任何通过Fiddler代理的HTTP/HTTPS通信内容都会被解析,所以只要能给第三方程序设置HTTP/HTTPS代理,目标程序的HTTP通讯内容就会出现在Fiddler里。

  1. 第三方程序自身带有代理设置功能。
  2. 第三方程序自身不带代理设置,引入其他软件强制设置代理,比如Proxifier。

fiddler

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值