v0.5.0
版本发布时间: 2023-07-28 21:17:52
NaiboWang/EasySpider最新发布版本:v0.6.2(2024-04-22 06:37:17)
发布时间:Bilibili将展示视频播放次数更改为展示播放总时长后。
0.5.0更新说明(不要忘了更新主页)
- 重大更新:自定义操作增加在当前环境直接运行Python代码自定义变量和获得变量值功能,循环和判断条件同样支持自定义变量和表达式的识别:
此选项为高级功能,可以直接用Python代码操纵正在运行中的浏览器,及可以自定义整个执行环境中的变量,并对变量进行修改赋值等操作,示例:
- 用
self.browser
表示当前操作的浏览器,可直接用selenium
的API进行操作,如self.browser.find_element(By.CSS_SELECTOR, "body").send_keys(Keys.END)
即可滚动到页面最下方。 - 自定义一个全局变量:
self.myVar = 1
- 操纵上面定义的全局变量:
self.myVar = self.myVar + 1
- 打印上面定义的全局变量:
print(self.myVar)
如果想要将自己定义的变量作为字段记录,请选择下一个在执行环境下获得Python表达式值(eval操作)
选项。
此选项为高级功能,可以直接返回Python代码的表达式值,并在其他位置用Field["本操作名称"]
表示此操作返回值,示例:
- 返回当前浏览器对象的相关值,用
self.browser
表示当前操作的浏览器,可直接用selenium的API进行操作,如self.browser.find_element(By.CSS_SELECTOR, "body").text
即可返回当前页面的文字。 - 返回自定义全局变量的值:
self.myVar
- 返回条件判断的值:
self.myVar == 1
,此表达式的判断值可用于条件判断
和循环
!!! 注意此功能不能对变量进行赋值操作,即不可以写self.myVar = 1
这种,如果想要进行赋值操作,请选择上一个在执行环境下获得Python表达式值(eval操作)
选项。
-
一个循环文本列表内的文本可以输入多个输入框,只要对应好索引值:
-
执行阶段可设置Excel指定读取文件,并可指定Excel路径,对于一个循环文本列表中的多个字段,可读入Excel同名称多列并自动合并:
-
相对循环内的元素点击和移动到元素事件可设置相对循环内的XPath,但此功能和之前版本的任务文件存在兼容性问题,之前版本的文件需要手工修正,需要把所有使用循环内的点击元素操作的XPath设置为空才可用,因此建议直接使用新版本设计任务。
-
UI重大更新:可通过拖动操作来新增操作,修改流程以及调整锚点,即新增操作,剪切元素和调整锚点操作可通过拖动实现;右键可以删除元素;可双击箭头直接调整锚点。
-
浏览器操作台右下角增加关闭操作台的按钮,以应对某些操作台会挡住验证码框或登录框的特殊场景。
-
记录字段前可选择是否清空其他非本操作定义字段的值。
-
增加跳过当前循环功能,即Continue功能。
-
所有的XPath均可以使用Field["字段值"]替换为变量值。
-
对于提取数据操作,增加重新执行任务时从上次保存的位置继续执行的功能(保存任务时设置),以解决程序意外退出必须从头跑的问题。
-
OCR功能更换为ddddocr,无需手动安装环境并提高了OCR识别准确率。
-
修复提取数据时不保存数据多一行的bug。
-
操作执行前可设定等待某元素出现才执行。
-
可提取元素的属性值。
-
增加版权和使用协议说明。
-
全版本支持
一直向下滚动直到页面内容无变化
的功能,同时循环点击下一页的操作的退出循环条件改为找不到下一页按钮
及检测不到页面内容变化
。 -
优化日志格式。
-
增加可保存为
JSON
格式的文件的功能。 -
Chrome版本更新为115。