全部产品
云市场

rpa.chrome

更新时间:2019-09-18 15:39:20

目录

chrome

要使用chrome模块,需要rpa.chrome

chrome模块是用来向用户提供一系列操作内置浏览器的SDK,让用户通过简单的参数和方法调用来实现一些复杂的操作。

max_window

max_window()

该方法会将内置浏览器最大化。

  1. rpa.chrome.max_window()

create

create(url, *, wait=True, timeout=100)

  • url : 要打开的url
  • wait : 是否等待加载完成
  • timeout : 等待超时时间, 默认100s

该方法会创建一个Browser对象,并在内置浏览器打开对应的页面。
返回一个类型的对象。

  1. page = rpa.chrome.create('www.baidu.com')

catch

catch(name, *, mode=’title’)

  • name : 标题或者url
  • mode : ‘title’|’url’

根据url或者标题在内置浏览器捕获一个已经打开的页面。
返回一个类型的对象。

  1. page = rpa.chrome.catch('www.baidu.com', mode="url")

closeall

closeall()

关闭所有的页面

  1. rpa.chrome.closeall()

clean_cookie()

清除所有页面cookie

  1. rpa.chrome.clean_cookie()

Browser

Browser : 负责为用户提供Browser相关的一些操作。

close

close(self)

关闭浏览器对象

  1. page.close()

navigate

navigate(self, url, *, wait=True, timeout=100)

  • url : 要打开的url
  • wait : 是否等待加载完成
  • timeout : 等待超时时间, 默认100s

从当前浏览器对象的链接跳转到另指定的链接。

  1. page.navigate('www.taobao.com')

back

back(self)

浏览器后退

  1. page.back()

activate

activate(self)

浏览器切换

  1. page.activate()

wait

wait(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout : 超时时间

等待控件加载

  1. page.wait('控件名称')

wait_disappear

wait_disappear(self, element, *, index=1, parent_element=None,
timeout=10)

  • element : 控件名
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout : 超时时间

等待控件消失

  1. page.wait_disappear('控件名称')

download

download(self, *, path=None, element=None, url=None, name=None, index=1,
parent_element=None, timeout=10)

  • path : 保存的文件路径
  • url : 下载路径
  • name : 保存的文件名称(调用控件下载的时候可以是路径加名称
  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout : 超时时间

下载

调用浏览器下载方法,需要使用path,url,name(可空)
调用控件下载,需要用element,name,index(可空),parent_element(可空)

注:点按钮下载写的是name,用url下载写的是path

  1. page.download(path=r'D:/',url=r'http://pcr1.pc6.com/rm/bdbizhi.zip')
  2. page.download(element ='控件名称',name =r'aaa.zip')
  3. #遇到未产生空白页的异步下载需要判断下载完成
  4. page.download(name=r"C:\test\temp.exe", element="链接_16547")#写一个临时文件名
  5. while True:
  6. if os.path.exists(r"C:\test\temp.exe"): #等待文件创建
  7. try:
  8. os.rename(r"C:\test\temp.exe",r"C:\test\target.exe") #下载完成后能完成重命名操作
  9. break
  10. except Exception as e: #由于正在下载所以被占用
  11. # print(e)
  12. sleep(1)
  13. else:
  14. sleep(1)

upload

upload(self, element, file, *, index=1, parent_element=None, timeout=10)

  • file : 上传的文件路径
  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout : 超时时间

上传文件

  1. page.upload('控件名称',r'D:/baidu.jpg')

paste

paste(self)

粘贴到浏览器

  1. page.paste()

executejs

executejs(self, code)

  • code : js代码

执行js代码

  1. page.executejs("alert('aaa')")

table

table(self, value, type=’index’, rtrtype=’text’, parent_element=None)

获取表格

  • value : 类型为index时是下标,否则为正则表达式
  • type : ‘index’|’text’|’html’
  • rtrtype : ‘text’|’html’返回类型文本或者html

返回二维数组或html

  1. result = page.table(1,'index','html')
  2. result = page.table(1,'index','text')
  3. result = page.table('Month','text','html')
  4. result = page.table('Month','text','text')
  5. result = page.table('<table border="1">','html','html')
  6. result = page.table('<table border="1">','html','text')

scroll

scroll(self, height=0)

  • height : 设置则滚动指定高度,否则滚动一屏幕

滚动页面

  1. page.scroll()
  2. page.scroll(height=100)

text

text(self, element=None, *, index=1, parent_element=None)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象

获取文本

  1. result = page.text('控件名称')

html

html(self, element=None, *, index=1, parent_element=None)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象

获取html

  1. result = page.html('控件名称')

input

input(self, element, value, *, index=1, parent_element=None,
simulate=True, timeout=10)

  • element : 控件名称(输入控件)
  • value : 输入的内容
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • simulate:是否模拟输入
  • timeout:超时时间

输入框输入

  1. result = page.input('控件名称','aaa')

value

value(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名称(按钮控件)
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

获取value属性的值

  1. result = page.value('控件名称')

option

option(self, element, value, *, index=1, parent_element=None,
type=’match’, timeout=10)

  • element : 控件名称(下拉列表控件)
  • value : 选择内容
  • index : 如果有多个,给出控件下标
  • type : ‘match’|’full’|’regex’ 分表标识模糊匹配|完全匹配|正则匹配
  • parent_elemet : 父控件对象
  • timeout:超时时间

下拉框选择

  1. page.option('控件名称','Sa')
  2. page.option('控件名称','Sa',type='match')
  3. page.option('控件名称','Saab',type='full')
  4. page.option('控件名称','.*',type='regx')

check

check(self, element, *, value=None, index=1, parent_element=None,
timeout=10)

  • element : 控件名称(复选框控件)
  • value : 不给获取勾选状态,传入True则勾选,传入False取消勾选
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

勾选框操作
获取勾选状态时有返回值

  1. result = page.check('控件名称')
  2. page.check('控件名称',value=True)
  3. page.check('控件名称',value=False)

click

click(self, element, *, index=1, parent_element=None, simulate=True,
timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • simulate:是否模拟点击
  • timeout:超时时间

点击

  1. page.click('控件名称')

element_count

element_count(self, element, *, parent_element=None)

  • element : 控件名称
  • parent_elemet : 父控件对象

获取控件个数

  1. result = page.element_count('控件名称')

attr

attr(self, element, attrname, *, index=1, parent_element=None,
timeout=10)

  • element : 控件名称(复选框控件)
  • attrname : ‘value’|’name’|’href’ 值|名称|链接
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

获取属性

  1. result = page.attr('控件名称',attrname='value')
  2. result = page.attr('控件名称',attrname='name')
  3. result = page.attr('控件名称',attrname='href')

alert

alert(self, element, *, value=’ok’, index=1, parent_element=None,
timeout=10)

  • element : 控件名称(弹出窗按钮)
  • index : 如果有多个,给出控件下标
  • value : ‘yes’|’no’ 点确定或取消
  • parent_elemet : 父控件对象
  • timeout:超时时间

弹出框点击

  1. result = page.alert('按钮名称',value='no')

pos

pos(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

获取控件坐标
返回坐标 json格式{x1:,y1:,x2:,y2}

  1. result = json.loads(page.pos('百度一下'))

解析json坐标,并转成int类型

  1. x1 = int(float(result["x1"]))
  2. x2 = int(float(result["x2"]))
  3. y1 = int(float(result["y1"]))
  4. y2 = int(float(result["y2"]))

screenshot

screenshot(self, element, file, *, index=1, parent_element=None,
timeout=10)

  • element : 控件名称
  • file : 保存的截图路径
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

截图

  1. result = page.screenshot('控件名称',r'D:\aaa.jpg')

isvisible

isvisible(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

获取控件是否可见
返回是否可见

  1. result = page.isvisible('控件名称')

drag

drag(self, element, *, x=None, y=None, index=1, parent_element=None,
timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • x : x轴偏移量
  • y : y轴偏移量
  • parent_elemet : 父控件对象
  • timeout:超时时间

将元素拖拽到指定的位置

  1. result = page.drag('控件名称')

clear_input

clear_input(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

清空输入框

  1. result = page.clear_input('控件名称')

mouse_move

mouse_move(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

鼠标移入

  1. result = page.mouse_move('控件名称')

get_element

get_element(self, element, *, index=1, parent_element=None, timeout=10)

  • element : 控件名称
  • index : 如果有多个,给出控件下标
  • parent_elemet : 父控件对象
  • timeout:超时时间

返回控件对象

  1. element = page.get_element('控件名称')

url

url(self)

返回url

  1. url = page.url()

title

title(self)

返回标题

  1. title = page.title()

reload

reload(self)

刷新页面

  1. page.reload()

get_cookie(self)

获取cookie

  1. page.get_cookie()