网易首页 > 网易号 > 正文 申请入驻

三行代码启动隐身浏览器,这个库想干掉Selenium

0
分享至

写爬虫的人都有过这种崩溃时刻:本地跑得好好的脚本,一上服务器就被Cloudflare拦住,Chrome版本对不上驱动,内存占用莫名其妙飙到几个G。有人在HN上甩了一段代码,说这些问题他全解决了——用Bun跑,三行代码启动,还能自动点掉Turnstile验证框。

这个叫Mochi.js的库,核心卖点是"bun-native"。不是简单的包装层,而是直接扎进Bun的运行时里。传统方案像Puppeteer或Playwright,本质是Node调Chrome DevTools协议,中间隔了一层翻译。Mochi.js的作者显然嫌这层翻译太慢,干脆用Bun的内置API重写了一遍浏览器控制逻辑。


代码示例里藏着几个有意思的设计。第一个是profile系统——"linux-chrome-stable"、"mac-m4-chrome-stable"、"win11-chrome-stable",不是随便起的名字,是完整的环境指纹。UA、字体列表、Canvas指纹、WebGL渲染器,全部按真实设备配置。seed参数更关键,同一个seed永远生成同一套指纹,这意味着你可以给每个账号分配固定的"设备身份",而不是每次启动都是一台新电脑。


第二个是challenges模块。示例里演示了Turnstile的autoClick,这是Cloudflare的人机验证。代码结构留了个onEscalation钩子,说明作者知道自动点击会被升级检测——可能是变体验证码,可能是行为分析触发的人工复核。这个设计比硬闯聪明,至少让你知道在哪一步露馅。

第三个是addInitScript的JIT-friendly注释。在页面任何脚本执行之前注入代码,用的是Proxy陷阱而不是简单的字符串替换。这意味着你可以拦截JavaScript对象的访问,而且不会被页面的代码轻易检测到。示例里给window挂了个__site_marker,后面还能removeInitScript——不是一锤子买卖,是可持续的会话控制。

技术选型上,作者押注Bun是有风险的。Bun的兼容性还没达到Node的生态规模,但反过来想,能用Bun的生产环境,用户本身就更激进、更容忍早期项目。这个筛选机制反而帮Mochi.js找到了第一批种子用户:那些已经被Puppeteer的内存泄漏折磨到想换语言的人。

浏览器自动化这个领域,过去十年的叙事是"模拟真人行为",现在的风向变成"直接就是真人行为"。不是改User-Agent假装Chrome,是真的启动一个Chrome,但把指纹管理、会话隔离、验证对抗这些脏活封装好。Mochi.js的代码示例没有展示性能数据,但"bun-native"这个词本身就在暗示速度——毕竟Bun的启动速度和内存效率,是Benchmark里反复验证过的。


值得观察的是seed机制的设计哲学。传统爬虫用代理IP轮换身份,Mochi.js用seed轮换设备指纹。IP可以封,设备指纹的封禁成本更高——尤其是当这套指纹模拟得足够真的时候。这有点像早年Android模拟器对抗游戏反作弊的军备竞赛,只不过战场换到了浏览器。

项目还在早期,GitHub星数没公开,但HN的Show HN板块向来是技术风向的晴雨表。上一个在这里火起来的浏览器自动化工具是Playwright,再之前是Puppeteer。如果Mochi.js能稳住Bun的兼容性,把profile库做厚——现在只有三个预设,显然不够——它可能会切走一块对延迟极度敏感的市场。比如广告验证、价格监控、账号矩阵运营这些场景,启动速度差几秒就是真金白银。

当然,风险也明显。Bun本身的迭代速度、Chrome版本升级的追赶、反爬策略的升级,都是悬在头上的剑。代码示例里那个onEscalation回调,既是功能也是伏笔——作者知道这场猫鼠游戏不会停。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
收评:深成指震荡调整跌0.47% 沪深两市连续五个交易日突破3万亿

收评:深成指震荡调整跌0.47% 沪深两市连续五个交易日突破3万亿

财联社
2026-05-12 15:03:06
罗马教皇遭银行客服挂电话:必须本人前往银行网点办理

罗马教皇遭银行客服挂电话:必须本人前往银行网点办理

维城
2026-05-08 19:29:12
“野爹机”事件给所有公司敲响了警钟

“野爹机”事件给所有公司敲响了警钟

老端的观点
2026-05-11 19:32:12
21岁双胞胎姐妹1死1重伤,凶手为妹妹男友,案发前数小时双方在派出所调解,家属起诉警方失职;嫌犯作案当天发布动态:狠角色我只扮演一次

21岁双胞胎姐妹1死1重伤,凶手为妹妹男友,案发前数小时双方在派出所调解,家属起诉警方失职;嫌犯作案当天发布动态:狠角色我只扮演一次

大风新闻
2026-05-12 08:55:33
武大开了一个坏头

武大开了一个坏头

燕梳楼频道
2026-05-12 12:31:28
利好突袭!3800亿巨头直线拉升,百亿美元大单引爆创新药概念

利好突袭!3800亿巨头直线拉升,百亿美元大单引爆创新药概念

21世纪经济报道
2026-05-12 14:15:13
河南55岁女子跟邻居吵架后越想越气,头痛呕吐紧急送医不幸去世:血压飙升引发脑干出血

河南55岁女子跟邻居吵架后越想越气,头痛呕吐紧急送医不幸去世:血压飙升引发脑干出血

大象新闻
2026-05-12 14:46:07
OPPO的“两个老公”与女权渗透!

OPPO的“两个老公”与女权渗透!

红色少女主播
2026-05-09 23:55:15
腾讯张军:微信“访客功能”已焊死,不会开发,不会提供

腾讯张军:微信“访客功能”已焊死,不会开发,不会提供

界面新闻
2026-05-12 10:29:50
男子凌晨被围殴狂奔求救,刚跨进武警警戒线身后6人当场不敢越线

男子凌晨被围殴狂奔求救,刚跨进武警警戒线身后6人当场不敢越线

爱下厨的阿酾
2026-05-12 13:41:16
问界M9尾灯能"画"长城黄河,49.98万起预售

问界M9尾灯能"画"长城黄河,49.98万起预售

硅屿手记
2026-05-12 07:50:33
著名数学家、数学教育家姜礼尚逝世

著名数学家、数学教育家姜礼尚逝世

澎湃新闻
2026-05-12 13:36:26
5月,遇到这碱性水果,买它20斤,晒干囤起来,从夏天吃到秋天

5月,遇到这碱性水果,买它20斤,晒干囤起来,从夏天吃到秋天

阿龙美食记
2026-05-11 09:18:41
某民航研究所员工晒出26年收入,真的让人羡慕啊

某民航研究所员工晒出26年收入,真的让人羡慕啊

微微热评
2026-05-12 11:50:00
君乐宝奶粉吃出虫子,调换后又发现虫卵,涉事门店:有事找厂家

君乐宝奶粉吃出虫子,调换后又发现虫卵,涉事门店:有事找厂家

商业透镜
2026-05-11 14:14:55
中国在美伊开战后石油日进口减少25%,但库存创新高,还将部分石油出售

中国在美伊开战后石油日进口减少25%,但库存创新高,还将部分石油出售

爆角追踪
2026-05-12 09:20:42
哈佛博士:大幅提高人类寿命的真正原因,所有人都没想到!

哈佛博士:大幅提高人类寿命的真正原因,所有人都没想到!

深度报
2026-05-10 22:38:11
专家:女性生育力“余额”无声流失,35岁后呈断崖式下降

专家:女性生育力“余额”无声流失,35岁后呈断崖式下降

南方都市报
2026-05-12 08:48:40
女孩演出结束,将购买的礼服退掉,商家指女孩“白嫖”,女孩回应

女孩演出结束,将购买的礼服退掉,商家指女孩“白嫖”,女孩回应

胡侃社会百态
2026-05-12 10:10:13
赖清德7月“过境”美国将不准下飞机?赖氏“国际笑话”不断上新

赖清德7月“过境”美国将不准下飞机?赖氏“国际笑话”不断上新

海峡导报社
2026-05-12 16:24:08
2026-05-12 17:04:49
爬虫饲养员
爬虫饲养员
业余养了只叫“龙虾”的AI爬虫,主业是给互联网打工。
2552文章数 29关注度
往期回顾 全部

科技要闻

宇树发布载人变形机甲,定价390万元起

头条要闻

学生建议吸烟区设板凳 高校回应:若"站不住"建议戒烟

头条要闻

学生建议吸烟区设板凳 高校回应:若"站不住"建议戒烟

体育要闻

总是掉链子的“倒霉蛋”,闯进了欧战决赛

娱乐要闻

刘涛晒妈祖诞辰活动照 评论区变许愿池

财经要闻

黄仁勋真是被白宫彻底封杀了

汽车要闻

吉利银河“TT”申报图曝光 电动尾翼+激光雷达

态度原创

亲子
本地
旅游
房产
公开课

亲子要闻

孩子如何戒赌,戒游戏瘾,戒手机瘾?

本地新闻

用苏绣的方式,打开江西婺源

旅游要闻

安徽肥东:老粮仓“烤”红乡村游 三件套“窑”动新引擎

房产要闻

50亿资本布局!宁德时代,突然重仓三亚!

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版