selenium
- 首先到码云下载插件点击下载到本地并导入到工作空间或安装到maven库
- 在spider-flow/spider-flow-web/pom.xml中引入插件
chrome驱动下载地址: 注意版本问题
- firefox驱动下载地址:https://github.com/mozilla/geckodriver/releases
节点说明
- 页面加载超时时间,单位为毫秒
- 元素获取超时时间,单位为毫秒
- URL:起始地址
- 节点执行完毕后,会产生 类型为
SeleniumResponse
的变量
SeleniumResponse 方法
参数名 | 描述 | 可否为空 |
---|---|---|
cssSelector | 要获取的cssSelector | 否 |
TIP
返回值类型:WebElement
- 获取页面上的第一个div
${resp.selector('div')}
selectors
参数名 | 描述 | 可否为空 |
---|---|---|
cssSelector | 要获取的cssSelector | 否 |
TIP
返回值类型:WebElements
- 获取页面上的所有div
${resp.selectors('div')}
xpath
参数名 | 描述 | 可否为空 |
---|---|---|
xpath | 要获取的xpath | 否 |
TIP
返回值类型:WebElement
- 获取页面上的第一个div
${resp.xpath('//div')}
xpaths
参数名 | 描述 | 可否为空 |
---|---|---|
xpath | 要获取的xpath | 否 |
TIP
返回值类型:WebElements
- 获取页面上的所有div
${resp.xpaths('//div')}
executeScript
TIP
返回值类型:Object
- 执行js
${resp.executeScript('return "hello spider-flow-" + arguments[0];',['selenium'])}
quit
- 退出浏览器
${resp.quit()}
toUrl
参数名 | 描述 | 可否为空 |
---|---|---|
url | 要跳转的url | 否 |
- 跳转到百度
html
TIP
返回值类型:String
- 获取节点的html
text
TIP
返回值类型:String
- 获取节点的text
attr
返回值类型:String
- 获取节点的href属性
${elementVar.attr('href')}
参数名 | 描述 | 可否为空 |
---|---|---|
cssSelector | 要获取的cssSelector | 否 |
TIP
返回值类型:WebElement
- 获取该节点下的第一个div
${elementVar.selector('div')}
selectors
参数名 | 描述 | 可否为空 |
---|---|---|
cssSelector | 要获取的cssSelector | 否 |
TIP
返回值类型:WebElements
- 获取获取该节点下的所有div
${elementVar.selectors('div')}
xpath
参数名 | 描述 | 可否为空 |
---|---|---|
xpath | 要获取的xpath | 否 |
TIP
返回值类型:WebElement
- 获取获取该节点下的第一个div
${elementVar.xpath('//div')}
xpaths
TIP
返回值类型:WebElements
- 获取获取该节点下的所有div
${elementVar.xpaths('//div')}
screenshot
TIP
返回值类型:byte[]
- 对该节点进行截图
${elementVar.screenshot()}
click
TIP
返回值类型:WebElement
- 对该节点进行点击
sendKeys
TIP
返回值类型:WebElement
- 对该节点进行模拟按键
clickAndHold
release
move
参数名 | 描述 | 可否为空 |
---|---|---|
offset_x | offset x | 是 |
offset_y | offset y | 是 |
在该节点上模拟鼠标移动,当offset_x和offset_y为空时,则模拟鼠标移动到该节点上
pause
perform
TIP
以上6个方法是配套使用,调用perform时才是真正执行动作
- 模拟鼠标移动到该节点上,等待500ms在点击,等待500ms在移动,最后释放(模拟拖拽滑块条)
${elementVar.move().pause(500).clickAndHold().pause(500).move(200,0)release().perform()}
WebElements 方法
html
TIP
返回值类型:List<String>
- 获取节点的html
${elementsVar.html()}
text
TIP
返回值类型:List<String>
- 获取节点的text
${elementsVar.text()}
attr
TIP
返回值类型:List<String>
- 获取节点的href属性
${elementsVar.attr('href')}
selector
参数名 | 描述 | 可否为空 |
---|---|---|
cssSelector | 要获取的cssSelector | 否 |
TIP
返回值类型:WebElement
- 获取该节点下的第一个div
${elementsVar.selector('div')}
selectors
参数名 | 描述 | 可否为空 |
---|---|---|
cssSelector | 要获取的cssSelector | 否 |
TIP
返回值类型:WebElements
- 获取获取该节点下的所有div
${elementsVar.selectors('div')}
xpath
参数名 | 描述 | 可否为空 |
---|---|---|
xpath | 要获取的xpath | 否 |
TIP
返回值类型:WebElement
- 获取获取该节点下的第一个div
xpaths
返回值类型:WebElements
- 获取获取该节点下的所有div
${elementsVar.xpaths('//div')}