python selenium模拟滑动操作

时间:2017-12-08 01:20:05   收藏:0   阅读:1203

selenium.webdriver提供了所有WebDriver的实现,目前支持FireFox、phantomjs、Chrome、Ie和Remote

quit()方法会退出浏览器,而close()方法只是关闭页面,但如果只有一个页面被打开,close()方法同样会退出浏览器

使用remote WebDriver

使用remote WebDriver之前,需要先启动selenium server,命令如下:

java -jar selenium-server-standalone-2.x.x.jar

 

selenium server运行之后会看到如下信息:

15:43:07.541 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub

 

上面的信息指明了连接seleniumserver的地址http://127.0.0.1:4444/wd/hub,下面是实例代码:

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities  
   
driver = webdriver.Remote(  
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,  
   desired_capabilities=DesiredCapabilities.CHROME)  
   
driver = webdriver.Remote(  
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,  
   desired_capabilities=DesiredCapabilities.OPERA)  
   
driver = webdriver.Remote(  
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,  
   desired_capabilities=DesiredCapabilities.HTMLUNITWITHJS)  

 

Desiredcapabilities是字典类型,因此除了使用默认值,也可以重新定义字典的值,代码如下:

driver = webdriver.Remote(  
   command_executor=‘http://127.0.0.1:4444/wd/hub‘,  
   desired_capabilities={‘browserName‘:‘htmlunit‘,  
                         ‘version‘:‘2‘,  
                        ‘javascriptEnabled‘:True})

 

send_keys(keys.RETURN) #键盘返回键
send_keys(Keys.ARROW_DOWN) #键盘向下的箭头

#coding:utf-8  
from selenium import webdriver  
from selenium.webdriver.common.action_chains import ActionChains #引入ActionChains鼠标操作类  
from selenium.webdriver.common.keys import Keys #引入keys类操作  
import time  
   
 
browser = webdriver.Chrome()  
browser.get(‘http://www.baidu.com‘)  
print ‘现在将浏览器最大化‘  
browser.maximize_window()  

article = browser.find_element_by_link_text(u‘周碧华:社科院出现内鬼意味着什么?‘)  
ActionChains(browser).move_to_element(article).perform()#将鼠标移动到这里,但是这里不好用  
ActionChains(browser).context_click(article).perform()  
time.sleep(5)  
   
browser.quit()  

 

评论(0)
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!