【代码】第11章 APP的爬取,appium打开微信朋友圈

本文介绍了如何利用Charles和mitmproxy进行网络抓包,然后详细讲解了在win10环境下配置appium进行安卓APP自动化测试,特别是针对微信的登录问题和输入法切换进行了探讨。在尝试不同版本的appium和jdk后,最终成功使用appium 1.9和jdk 1.8打开微信元素页面,并提到了在登录新账号时遇到的挑战。
摘要由CSDN通过智能技术生成

11.1 Charles的使用
电脑win10安装Charles,安装受信任的证书;
替换安装目录的charles.jar,得到破解版;

为解决乱码问题,网上一些做法:
将SSL代理设置里add,Host填 * ,port填443;
Charles.ini加上UTF-8;
Tools里Rewrite 设置application/jaon;charset=UTF-8
然而一些结果仍是乱码,此问题待考虑

索尼xzp G8142,安卓版本8.0.0,打开并点击所连接的wifi,高级选项,手动代理,设置电脑ip和Charles默认的8888port,浏览器中打开证书地址安装。

测试结果:
微信公共号评论可以查看,微信和qq图片可以查看,证明是连通的!
打开京东APP时弹出提示 "证书长度为1,是否继续" ,出现很多次!估计是安卓版本问题。(貌似安装7以上不信任证书)
原书中的jd商品评论压根就没看到,然后换成索尼Z3,安卓4.4.4后成功!

在这里插入图片描述
11.2 mitmproxy的使用
下载mitmproxy win.exe
要查找到.mitmproxy文件夹(因不在安装目录下),安装mitmproxy-ca-cert.p12证书
复制mitmproxy-ca-cert.pem证书到手机(在设置-安全-从SD卡安装),设置WiFi的IP/Port(类似Charles)
打开mitmweb.exe或mitmdump.exe可以监控,但不能操作修改Query(书中示例)

6.mitmdump的使用
为方便,使用pycharm编辑脚本,脚本在pycharm打开的Terminal路径下运行mitmdump -s Scripts.py
实例重写了http中的request、response方法

import mitmproxy.http
from mitmproxy import ctx

def request(flow:mitmproxy.http.HTTPFlow): 
	# flow是mitmproxy.http.HTTPFlow对象
	
	# 改请求头
    flow.request.headers['User-Agent'] = 'MitmProxy'
    print(flow.request.headers)
    ctx.log.info('info')
    ctx.log.warn('warn')
    ctx.log.error('error')
    
    # request功能
    # request = flow.request
    # info = ctx.log.info
    # info(request.url)
    # info(str(request.headers))
    # info(str(request.cookies))
    # info(request.host)
    # info(request.method)
    # info(str(request.port))
    # info(request.scheme)
    
    # 修改url,转发假cookies(此处为baidu),被吓到了。。。。
    flow.request.url = 'https://www.baidu.com'

def response(flow: mitmproxy.http.HTTPFlow): 
    response = flow.response
    info = ctx.log.info
    info("status_code $$"+str(response.status_code))
    info("headers $$
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值