- 戳上方蓝字�?牛皮糖不吹牛*”关注我
大家好,我是牛皮糖!今天介绍一款简化浏览器自动化的 Python 库。该项目是基�?Selenium 的轻量级 Python 库,它通过提供更高级和易用�?API,让�?Python 编写浏览器自动化脚本变得更加简单和方便,支�?Chrome �?Firefox 浏览器�?
安装
要开始使�?Helium,您需�?Python 3 �?Chrome �?Firefox�?
-python -m pip install helium
在底层,Helium 将每个调用转发给 Selenium。不同之处在�?Helium �?API 更高级。在 Selenium 中,您需要使�?HTML ID、XPath �?CSS 选择器来识别网页元素�?
另一方面,Helium 允许您通过用户可见的标签引用元素。因此,Helium 脚本通常比类似的 Selenium 脚本�?30-50%。更重要的是,它们更易于阅读,并且相对于底层网页的变化更稳定�?
由于 Helium 只是 Selenium 的包装器,是可以自由混合这两个库。例如:
-
-
-
-# A Helium function:``driver = start_chrome()``# A Selenium API:``driver.execute_script("alert('Hi!');")
*主要优化功能�?
iFrames:与 Selenium 不同,Helium 允许您与嵌套 iFrames 内的元素进行交互,而无需先“切换到”iFrame�?
窗口管理。Helium会注意到弹出窗口何时打开或关闭,并像用户一样聚�?散焦它们。您还可以通过标题(部分)轻松切换到窗口。无需再迭�?Selenium 窗口句柄�?
隐式等待。默认情况下,如果您尝试使用 Selenium 单击某个元素,而该元素尚未出现在页面上,则您的脚本将失败。默认情况下,Helium 最多会等待 10 秒钟才能显示该元素�?
显式等待。Helium为您提供了一个更好的 API,用于等待网页上的条件变为真�?
Helium 相对于Selenium 来说,是一款更加轻巧的爬虫框架,之前不仅支持Python 还支�?Java ,可惜在后面的更新迭代种,因为他们公司原因导�?Java 的那部分流产�?
项目地址�?
https://github.com/mherrmann/helium
·················END·················
推荐阅读
•�? github 95.5k Star 的项目集合地•�? 4�?16G 就能 RAGFlow Quick start 快速入门• github 7.8k star 将小爱音箱接�?ChatGPT 和豆包,改造成你的专属语音助手。