读书笔记——Selenium

浏览器操作部分

driver = webdriver.Firefox()       #启动浏览器(可选择浏览器)
driver.get("http://www.baidu.com") #请求网址
driver.forward()                   #浏览器前进
driver.back()                      #浏览器后退
driver.maximize_window()           #浏览器最大化
driver.set_window_size(1920,1080)  #设置浏览器大小
driver.quit()                      #关闭浏览器

 

对象定位方法

find_element_by_id()                 #使用id定位
find_element_by_name()               #使用name定位
find_element_by_class_name()         #使用class name定位
find_element_by_tag_name()           #使用tag name定位
find_element_by_link_text()          #使用link text定位
find_element_by_partial_link_text()  #使用partial_link_text定位
find_element_by_xpath()              #使用xpath定位
find_element_by_css_selector()       #使用css selector定位

Xpath语法

CSS选择器参考手册

 

webdriver常用操作

clear           清除元素的内容,如果可以的话
send_keys       在元素上模拟按键输入
click           单击元素
submit          提交表单

 

鼠标事件

from selenium.webdriver.common.action_chains import ActionChains #引用

context_click()                                                  #右击
ouble_click()                                                    #双击
drag_and_drop()                                                  #拖动
move_to_element()                                                #鼠标悬停在一个元素上
click_and_hold()                                                 #按下鼠标左键在一个元素

 

键盘事件

from selenium.webdriver.common.keys import Keys                #引入

driver.find_element_by_id("elem").send_keys("selenium")        #键入文本
driver.find_element_by_id("elem").send_keys(Keys.BACK_SPACE)   #退格

常用键盘操作:
send_keys(Keys.BACK_SPACE)                                     #删除键(BackSpace) 
send_keys(Keys.SPACE)                                          #空格键(Space) 
send_keys(Keys.TAB)                                            #制表键(Tab) 
send_keys(Keys.ESCAPE)                                         #回退键(Esc) 
send_keys(Keys.ENTER)                                          #回车键(Enter) 
send_keys(Keys.CONTROL,'a')                                    #全选(Ctrl+A) 
send_keys(Keys.CONTROL,'c')                                    #复制(Ctrl+C)
send_keys(Keys.CONTROL,'x')                                    #剪切(Ctrl+X) 
send_keys(Keys.CONTROL,'v')                                    #粘贴(Ctrl+V)

 

练习1【登陆Acfun】:

from selenium import webdriver

driver=webdriver.Firefox()
driver.get("http://www.acfun.tv/")
driver.find_element_by_class_name("user-login").click()
driver.close()
allwindows=driver.window_handles
driver.switch_to_window(allwindows)
driver.find_element_by_id("ipt-account-login").send_keys("username")
driver.find_element_by_id("ipt-pwd-login").send_keys("password")
login=driver.find_element_by_class_name("area-tool").find_element_by_class_name("btn-login")
login.click()

  

 

posted @ 2016-09-07 00:28  ThunderStruck  阅读(160)  评论(0)    收藏  举报