本文主要是介绍mitmproxy 代理设置selenium可以绕过淘宝检测机制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1遇到了获取cookies这个重要的问题,而获取cookies的前提是实现用户登录,登陆的过程就不赘述了,相信大家都遇到了滑块,滚动条等反爬手段,(本人用webdriver破解),可大厂的技术团队还是给了我们一个更难解决的问题,就是通过js给webdriver请求响应错误信息。那我们的思考路线就是如何让这个js文件功能作废,本人使用的方法是通过 mitmproxy 蔽掉识别 webdriver 标识符的 js 文件。
2.首先下载mitproxy,pip安装方法:
安装mitmproy:
pip install mitmproxy
-
打开chrome的开发者工具,找到目标网站是通过哪个js文件控制webdriver相应的, 如:
4.mitmproxy_test.py:
import mitmproxy.http
t0='Object.defineProperties(navigator,{webdriver:{get:() => false}});'
t1='window.navigator.chrome = {runtime: {},// etc.};'
t2='''
Object.defineProperty(navigator, 'languages', {get: () => ['en-US', 'en']});
'''
t3='''
Object.defineProperty(navigator, 'plugins', {get: () => [1, 2, 3, 4, 5,6],});
'''
t4='''Object.defineProperties(navigator,{userAgent:{get: () => Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36;}})
'''
class Tb(object):def response(slef, flow: mitmproxy.http.HTTPFlow):if '114.js' in flow.request.url or 'um.js' in flow.request.url:flow.response.text=t3 + t2 + t4 + t0 + flow.response.textprint('注入成功')
addons=[Tb()
]
5.CMD 运行 mitmproxy_test.py
D:\AAA_alifapai\fpf_new\test\mitmproxy>mitmweb -s mitmproxy_test.py
6.运行截图如下:
浏览器 打开 " http://127.0.0.1:8081/#/flows"
参考:
https://blog.csdn.net/weixin_46089319/article/details/105559094
https://blog.csdn.net/Chen_chong__/article/details/85526088
相关文章:
这篇关于mitmproxy 代理设置selenium可以绕过淘宝检测机制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!