最近面试需要,重新捡起了爬虫,在抓包的时候发现尽管按照Charles的要求去安装证书,还是会抓不到https的包,最后发现需要把用户信任证书是不够的,需要系统信任证书才行。
第一步:把代理设置成Charles的代理,具体做法:Help - SSL Proxying - Install Charles Certificates on a Mobile Device or Remote Broswer。把代理设置成弹窗上的ip地址和端口
第二步:浏览器输入弹框上的网址,把证书下载下来。
第三步:打开证书所在目录,输入命令:
openssl x509 -inform der -in cacert.der -out 证书.pem
第四步:将证书名改成9a5ba575.0
第五步:利用adb将证书放到手机的系统目录
adb push 9a5ba575.0 /system/etc/security/cacerts/
后面Charles就可以抓到包了