标签:
不同于“HTML元素定位”那一篇,本篇主要记录selenium的各种控制操作。
1、修改页面元素属性。
需求场景:以<a>标签为例,当我们不希望新开tab或窗口打开链接时,就需要修改<a>的target属性为_self。
解决思路:似乎webdriver并不能改变页面的原始信息,但却提供了可以操作javascript脚本的接口,通过javascript可以顺利修改元素属性。
具体实现:driver.execute_script(script, *args)
1 def execute_script(self, script, *args): 2 """ 3 Synchronously Executes JavaScript in the current window/frame. 4 5 :Args: 6 - script: The JavaScript to execute. 7 - \*args: Any applicable arguments for your JavaScript. 8 9 :Usage: 10 driver.execute_script(‘document.title‘) 11 """ 12 if len(args) == 1: 13 converted_args = args[0] 14 else: 15 converted_args = list(args) 16 converted_args = list(args) 17 return self.execute(Command.EXECUTE_SCRIPT, 18 {‘script‘: script, ‘args‘:converted_args})[‘value‘]
eg: browse.execute_script("arguments[0].target=‘_self‘", a)
Selenium WebDriver控制操作(Python)
标签:
原文地址:http://www.cnblogs.com/kevin1201/p/4515113.html