Script
本章介绍脚本的基本使用。脚本使用json格式定义,在各种语言中,你都可以很方便将它反序列化。
转换方式
import crawlipt as cpt
# 在编写阶段可以使用python内置字典类型进行编写
script = {
"method": "redirect",
"url": "https://www.baidu.com/",
"next": {
"method": "input", # 方法名
"xpath": "//*[@id=\"kw\"]", # 方法对应参数
"text": "百度贴吧", # 方法对应参数
"next": { # 下一个要执行的脚本
"method": "click",
"xpath": "//*[@id=\"su\"]"
}
}
}
# 转换为了一个json字符串,可以将它存储在物理介质中
script_json = cpt.Script.generate_json(script) 执行脚本
脚本可以映射所有的action方法
脚本初始化参数介绍
参数名
类型
介绍
script
dict | str | list
预先编写好的脚本
global_script
dict | str | list = None
全局执行脚本,这个脚本将在每次执行任意一个action方法前进行执行。例如:有的网站会随机弹出广告,影响下面脚本的执行,定义该脚本可以在执行action方法前判断是否有广告,如果有的话去进行一系列操作关闭广告
interval
float = 0.5
每两次action方法执行的间隔
wait
float = 10
如果action方法中含有xpath或css参数,则会自动隐式等待wait秒,直到对应元素在dom结构中出现
is_need_syntax_check
bool = True
是否需要执行前严格的脚本语法检查,如果关闭会增加执行时的错误概率
脚本执行器参数介绍
通过列表step方式编写脚本
通过字典类型进行编写脚本,在action多的情况下,可能会导致嵌套字典过深,维护困难。使用列表方式编写脚本可以将嵌套流程变为串行流程。
最后更新于