NoDriver | 这个黑科技让你 5 分钟玩转网页自动化

📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中率杠杠的。(大家刷起来…)

📝 职场经验干货:

软件测试工程师简历上如何编写个人信息(一周8个面试)

软件测试工程师简历上如何编写专业技能(一周8个面试)

软件测试工程师简历上如何编写项目经验(一周8个面试)

软件测试工程师简历上如何编写个人荣誉(一周8个面试)

软件测试行情分享(这些都不了解就别贸然冲了.)

软件测试面试重点,搞清楚这些轻松拿到年薪30W+

软件测试面试刷题小程序免费使用(永久使用)


NoDriver 是一款基于无浏览器驱动的浏览器自动化工具,它的最大特点是无需下载或配置浏览器驱动,即可直接控制浏览器进行自动化操作。

与传统的 Selenium 不同,NoDriver 采用了直接调用浏览器调试协议(如 Chrome DevTools Protocol)的方式,减少了驱动兼容性和版本匹配的问题。

项目地址:

https://github.com/ultrafunkamsterdam/nodriver

主要功能

NoDriver 主要功能包含:

  • 免驱动运行:直接控制已安装的 Chrome / Edge 等浏览器,无需额外配置驱动程序。

  • 页面元素操作:支持点击、输入、拖拽、滚动、上传文件等常见浏览器操作。

  • 脚本执行:可在浏览器中执行 JavaScript 脚本,获取或修改页面内容。

  • 网络请求监听与修改:可拦截请求、注入响应数据,方便做爬虫与接口调试。

  • 截图与 PDF 生成:支持整页或指定区域截图,以及导出为 PDF。

  • 多标签、多会话管理:方便同时控制多个浏览器窗口或标签页。

适用场景

NoDriver 的免驱动特性,使它在以下场景中非常实用:

  1. Web 自动化测试
    快速构建端到端(E2E)测试,减少驱动安装与版本匹配问题。

  2. 数据采集与爬虫

  • 页面需要 JavaScript 渲染的动态内容

  • 网站有反爬虫机制,需要模拟真实浏览器访问

  1. 接口调试与前端联调
    拦截请求、注入数据,模拟接口响应,方便前端开发测试。

  2. 批量处理网页任务
    批量下载文件、批量截图、批量填写表单等场景。

  3. 逆向分析与安全测试
    利用 DevTools 协议监听网络请求、执行自定义脚本,辅助分析网页逻辑。

实战例子

以下是一个简单的 NoDriver 使用示例:

import nodriver as uc
import time

async def main():
    browser = await uc.start()
    tab = await browser.get('https://www.baidu.com')
    create_account = await tab.find("百度一下", best_match=True)
    await create_account.click()
    time.sleep(100)

if __name__ == '__main__':
    # since asyncio.run never worked (for me)
    uc.loop().run_until_complete(main())

更多进阶功能,可以参考官方例子

总结

对比项

NoDriver

Selenium

驱动依赖

免驱动,直接调用浏览器调试协议

需要下载对应版本的浏览器驱动(如 ChromeDriver)

启动速度

更快(省去驱动加载)

相对较慢

稳定性

依赖浏览器版本稳定性

依赖驱动与浏览器版本匹配

功能扩展

原生支持网络拦截、JS 注入等高级功能

需额外配置或使用第三方库

学习成本

接口相对简洁,但文档较少

文档丰富,学习资料多

生态与兼容性

新兴项目,生态尚在发展

成熟稳定,生态庞大

如果你想快速上手自动化、免去驱动安装的烦恼,且对生态依赖不多,NoDriver 是个不错的选择。

但如果你需要跨浏览器、多语言支持,以及更成熟的社区与插件,Selenium 依旧是稳妥方案。

未来,随着 DevTools 协议的普及,像 NoDriver 这样的免驱动自动化工具可能会逐渐成为主流。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值