python爬虫用drony转发进行抓包转发
转载至https://www.cnblogs.com/lulianqi/p/11380794.html#l_2
实际操作步骤(Android)
笔者这里直接使用上面提到第3种方法(方法1在对于手机APP很难操作,方法2可能需要其他设备所以这里不使用),因为我们的测试对象是手机移动APP,所以我们首先要在手机上安装一个VPN,这里使用一个十分方便的VPN软件drony (介绍在这里https://github.com/SuppSandroB/sandrop/wiki/Drony-FAQ),drony会在你的手机上创建一个VPN,将手机上的所有流量都重定向到drony自身(不是流向vpn服务器) ,这样drony就可以管理所有手机上的网络流量,甚至可以对手机上不同APP的流量进行单独配置。
1:安装drony (这里手机使用的Android设备)
您可以在网络上搜索drony选择自己想要的版本进行安装,或者在这里下载(https://files.cnblogs.com/files/lulianqi/Drony_102.apk),安装完成后打开软件如下图
2:开启代理抓包软件(这里代理抓包软件使用的是Fiddler)
Fiddler的使用这里不再介绍,需要打开远程代理,并在手机中安装Fiddler根证书
这里笔者开启的远程代理的地址是192.168.2.244:8888
关于证书安装有些细节,Fiddler默认的根证书是cer格式,部分手机可能只能识别pem格式证书
直接使用openssl 转一下就行了 (openssl x509 -inform der -in FiddlerRoot.cer -out FiddlerRoot.pem)
openssl 在中 windows/mac 一般都安装有,命令直接使用就行了,使用生成的FiddlerRoot.pem安装到手机上就行了(Charles默认就是pem证书)
3:配置drony转发
打开Drony(处于OFF状态),滑动到SETING页,点击选择Networks Wi-Fi 进入配置
在网络列表中选择点击当前手机wifi连接的网络 (需要确保该网络与Fiddler代理服务器网络是联通的)
配置要为当前网络使用的代理入口(这里直接填写fiddler代理地址就可以),选择代理模式为手动(Manual)
注意Proxy type代理方式要选择 Plain http proxy
Filter default value 选择 Direct all ,然后点击下面的Rule设置应用规则
默认您的规则里应该是空的,这里直接点击上面的加号添加一个规则(符合规则要求的才会被转发)
说明一下后面的操作会以咸鱼或支付宝做演示说明,不过笔者当前测试项目并不是咸鱼或支付宝,也不是其公司的员工,选择这2个APP做演示是因为这些APP比较常用,且无法抓包的原因与笔者当前项目APP是类似的。
在Network id处 选择当前wifi的SSID
Action 选择 Local proxy chain
Application 选择需要强制代理的APP
Hostname 及 Port 不填 表示所有的都会被强制代理,因为APP可能会使用其他的网络协议不一定都是http,可能不希望把所有流量都引流到http代理服务器,这个时候就会使用这个配置指定ip及端口才转发
完成后保存即可,然后返回到SETTING主页,滑动到LOG页,点击下面按钮,使其处于ON的状态(表示启用)
这个时候启动支付宝或咸鱼,我们就可以在Fiddler上看到正常的流量。不过如果你的运气与笔者一样可能只能看到这些Tunnel to (TLS管道建立),如果您使用的是Charles在列表里看到的可能是一个个红叉。
当然笔者Fiddler根证书是安装成功的,Fiddler配置也是正确的(手机上的Chrome https抓包都是正常的)
python爬虫用drony转发进行抓包转发的更多相关文章
- Python 爬虫——抖音App视频抓包
APP抓包 前面我们了解了一些关于 Python 爬虫的知识,不过都是基于 PC 端浏览器网页中的内容进行爬取.现在手机 App 用的越来越多,而且很多也没有网页端,比如抖音就没有网页版,那么上面的视 ...
- python爬虫01在Chrome浏览器抓包
尽量不要用国产浏览器,很多是有后门的 chrome是首选 百度 按下F12 element标签下对应的HTML代码 点击Network,可以看到很多请求 HTTP请求的方式有好几种,GET,POST, ...
- python爬虫之分析Ajax请求抓取抓取今日头条街拍美图(七)
python爬虫之分析Ajax请求抓取抓取今日头条街拍美图 一.分析网站 1.进入浏览器,搜索今日头条,在搜索栏搜索街拍,然后选择图集这一栏. 2.按F12打开开发者工具,刷新网页,这时网页回弹到综合 ...
- python爬虫构建代理ip池抓取数据库的示例代码
爬虫的小伙伴,肯定经常遇到ip被封的情况,而现在网络上的代理ip免费的已经很难找了,那么现在就用python的requests库从爬取代理ip,创建一个ip代理池,以备使用. 本代码包括ip的爬取,检 ...
- Python爬虫连载1-urllib.request和chardet包使用方式
一.参考资料 1.<Python网络数据采集>图灵工业出版社 2.<精通Python爬虫框架Scrapy>人民邮电出版社 3.[Scrapy官方教程](http://scrap ...
- Python爬虫入门教程 46-100 Charles抓取手机收音机-手机APP爬虫部分
1. 手机收音机-爬前叨叨 今天选了一下,咱盘哪个APP呢,原计划是弄荔枝APP,结果发现竟然没有抓到数据,很遗憾,只能找个没那么圆润的了.搜了一下,找到一个手机收音机 下载量也是不错的. 2. 爬虫 ...
- Python开发【笔记】:抓包(实时分隔)
抓包 进行linux系统抓包,并且定时分隔防止文件太大 #!/usr/bin/env python # -*- coding:utf-8 -*- import os import sys import ...
- Python爬虫实战:使用Selenium抓取QQ空间好友说说
前面我们接触到的,都是使用requests+BeautifulSoup组合对静态网页进行请求和数据解析,若是JS生成的内容,也介绍了通过寻找API借口来获取数据. 但是有的时候,网页数据由JS生成,A ...
- Python爬虫入门教程 45-100 Charles抓取兔儿故事-下载小猪佩奇故事-手机APP爬虫部分
1. Charles抓取兔儿故事背景介绍 之前已经安装了Charles,接下来我将用两篇博客简单写一下关于Charles的使用,今天抓取一下兔儿故事里面关于小猪佩奇的故事. 爬虫编写起来核心的重点是分 ...
随机推荐
- Go的安装和使用
1.安装环境 进入Golang官网,进入下载页面. (如果打不开可访问Golang中国,或者Golang中文版,或者百度网盘,提取码:wfw5) 根据实际需求选择版本进行下载. 运行下载好的MSI安装 ...
- javascript 通信协议
简介 javascript 通信协议是一个伪协议[1], 用于指定 URL 为 JavaScript 代码 语法: javascript:someScript; someScript 是一个或多个使用 ...
- pdfmake.js使用及其源码分析
公司项目在需要将页面的文本导出成DPF,和支持打印时,一直没有做过这样的功能,花了一点时间将其做了出来,并且本着开源的思想和技术分享的目的,将自己的编码经验分享给大家,希望对大家有用. 现在是有一个文 ...
- front-end——HTML5/CSS3基础
概述 1.什么是前端 前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页,随着互联网技术的发展,html5,css3,前端框架的应用,跨平台响应式网页设计能够适应各种屏幕分辨率,完 ...
- Spring集成Quartz定时任务
1.导入jar包 2.配置applicationContext.xml文件 <!-- 任务调度1 --> <!-- bean id="simpleJob" cla ...
- Python os.read() 方法
概述 os.read() 方法用于从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串.高佣联盟 www.cgewang.com ...
- PHP date_sunrise() 函数
------------恢复内容开始------------ 实例 返回葡萄牙里斯本今天的日出时间: <?php// Lisbon, Portugal:// Latitude: 38.4 Nor ...
- PHP simplexml_load_file() 函数
实例 转换 XML 文件为 SimpleXMLElement 对象,然后输出对象的键和元素: <?php高佣联盟 www.cgewang.com$xml=simplexml_load_file( ...
- Qt 乱码
个人认识: 乱码的原因: 在编写代码时-->文件的格式--->编译器对文件进行编译的时候看到的只是二进制(乱码就出现在这里) 应合适方法 通知编译器(为什么说通知编译器呢?因为个人觉得这样 ...
- 25-Object类的使用
1.java.lang.Object类的说明: * 1.Object类是所Java类的根父类 * 2.如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object ...