Python+Selenium初入殿堂

碼字不易,轉發請註明出處:http://blog.csdn.net/qq_28945021/article/details/53538704

前言


近期接到編寫一個自動化測試web項目的腳本任務,由於需要兼容IE,因此只能選擇Selenium咯,本篇博客意在記錄,備忘,若有不足或錯誤,還望指出。

依賴


首先需要下載Selenium,使用pipy很簡單的就能下載下來。
接下來是兼容幾個瀏覽器的驅動,這裏我只使用IE,因此只下載了Ie的驅動:
注意!!!在選擇IE驅動時,使用32bit的,不然你的腳本會運行得極慢!尤其是send_keys時
這些依賴很容易就能下到了。多用心百度下。

使用

1.打開瀏覽器並跳轉頁面:

from selenium import webdriver

bower = webdriver.Ie()  #打開Ie瀏覽器
bower.get("http://www.baidu.com")   #跳轉到百度頁面

值得注意的是,坑爹的Ie某樣安全選項會使跳轉頁面後bower丟失,無法使用,反正我用的時候是全部關閉的。

2.尋找標籤element:

bower.find_element_by_id(id)
bower.find_element_by_tag_name(tagName)
bower.find_element_by_name(name)
...

這個很簡單,按下TAB就能出來你想要的尋找方式了。但是值得注意的是,無法從一個頁面選中該頁面中的iframe中的tag,這種需求時看下一條

3.進入不同iframe,window

bower.switch_to.frame(frameName)
bower.switch_to.window(windowName)

這裏默認使用iframe的name和window的name,如無name會匹配id

4.在input文本框中插入文本

text = bower.find_element_by_id("inputText")    
#這裏是選中待插入的文本框,括號中是該input的id
text.send_keys("快看看你的window")

很奇怪的,在firfox和chrome上都會很快,但是在Ie上就會特別慢,希望有知道如何解決的大神留言。

5.選擇Select

from selenium.webdriver.support.select import Select

sel = bower.find_element_by_id("selectId")
Select(sel).select_by_index(num)    #根據給定的數選擇

今天暫時用到的就這麼多,之後有用到更多會積累上來。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章