如何控制已打开的浏览器,从而实现 selenium 伪装

137 天前
 mondbyte

Selenium+Python 爬取网站公开数据,遇到网站过滤机制,无法打开。 尝试了网上多种伪装 selenium 方法,均未实现。 https://bot.sannysoft.com/ 全绿也不行,查了资料说是网站判断是 webdriver 的途径和方法很多。

现在大致的想法是:能否控制已手动打开的浏览器,定位到对应的标签页,来实现绕过机器人监测。 或者有其他办法的也可以。

目标网站: https://www.nmpa.gov.cn/datasearch/home-index.html#category=ylqx

备注:公开数据,非商业用途

3276 次点击
所在节点    Python
28 条回复
wind1986
137 天前
Puppeteer 能用本机浏览器
hubaq
137 天前
药监局用的是定制版的瑞数
forQ
137 天前
mondbyte
137 天前
@forQ 感谢方案!但还是没通过检测,打开依然 400
peanutBark
137 天前
能否控制已手动打开的浏览器,定位到对应的标签页 -------能,你搜索一下 chrome.exe --remote-debugging-port=9222
yaleyu
137 天前
反爬技术日新月异,Selenium 越来越力不从心,试试 drissionpage, https://gitee.com/g1879/DrissionPage
Belmode
137 天前
@yaleyu 请问这个可以通过 headless 方式使用吗
elevioux
137 天前
写个浏览器扩展?

虽然不能做到控制浏览器的程度
chen2016
137 天前
@yaleyu 这个毕竟是个人作品,会出现一些莫名其妙的 bug ,刚开始用的时候确实很惊艳,但是自从几个项目从 selenium 改到 DrissionPage 都出现了莫名的 bug 之后,我就彻底不敢乱用这个自动化框架了
xyz8899
137 天前
瑞数 5 代的 cookie 值也有很多种,目前 yao 监局是 neCYtZEjo8GmO ,neCYtZEjo8GmP
jianchang512
137 天前
直接开启 chrome 开发模型,写个小扩展控制页面抓取和请求过滤,似乎是更可行的方案,可以配合后端发送数据接收指令。
除此外 楼上说的 drissionpage, https://gitee.com/g1879/DrissionPage 也可以试试。
tudou527
137 天前
apify.com 能用么?
Laimf
137 天前
先通过 selenium 把浏览器拉起来,进入目标网站,如果没问题,说明 selenium 没被限制。那么就可以在代码里面加等待时间,进行判断匹配到了就运行逻辑。
zeusho871
137 天前
指纹浏览器
NoOneNoBody
137 天前
问题应该不在浏览器,在其他地方,例如频率和踩到蜜罐了
我这里就随手拿个 pyqt6 写的 webview 都能打开正常浏览几页
NoOneNoBody
137 天前
呃,背景有 canvas 动图,可能里面有指纹检测
llbqwhtxi
137 天前
chrome.exe --remote-debugging-port=**** --user-data-dir="C:\********" 5 楼说的没错
cdlnls
137 天前
太巧了,正好最近在写一个工具,就是做这个,还没发布。

主要是利用 chrome 扩展的 API 去控制浏览器,支持新建 tab 、刷新、前进后退等等,还可以给网页注入 JS/CSS 等等。

chrome 插件启动,然后设置服务端的地址后,会使用 websocket 去连接服务端。在服务端可以接收 HTTP 请求,然后通过调用 http 请求,就可以实时控制浏览器做一些操作。

比如
curl http://host/_cat/tabs
curl http://host/tabs/open?url=https://xxx.com
curl http://host/tabs/_reload?sid=xxx

理论上访问网页和自己用浏览器访问网页是一模一样的,据我所知应该是没有什么特征的。
cdlnls
137 天前
感觉你可以试试上面说的 remote-debugging-port ,这个看上去好像没问题。
yaleyu
136 天前
@chen2016 嗯,主要是用这个绕开 CF 的人机检查,有的网站 Selenium 实在绕不过,用了 undected-chromdriver 都绕不过。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1003217

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX