1、獲得頁面的原始碼
driver.get('')
source_code = driver.getpagesource()
如果想將獲得的網頁原始碼儲存成檔案的話:
f = open(r'c:\html_source_code.html','w')
f.write(source_code.encode('utf-8'))
f.close()
2、獲得頁面元素的某個屬性(title,target ....)
element = driver.find_element_by_id('#id')
element.get_attribute('&&&')
3、判斷某個元素的值是否為某種型別 (正規表示式根據具體的型別去寫):
self
.assertregex
(driver
.find_element_by_class_name
("classname"
).text,r
"^[\s\s]*[tt]ext*$"
)
4、cookie處理
driver.get_cookies() 獲取cookie資訊
add_cookie(cookie_dict) 向cookie中新增會話資訊
delete_cookie(name) 刪除特定的cookie
delete_all_cookies() 刪除所有cookie
driver.get("")
driver.add_cookie()
for cookie indriver.get_cookies():
"%s -> %s
" % (cookie['
name
'], cookie['
value
'])
如果想把所有cookies 儲存成txt檔案以便以後使用,可以使用python pickle module
import pickle
import selenium.webdriver
driver = selenium.webdriver.firefox()
driver.get("")
pickle.dump( driver.get_cookies() , open("cookies.pkl","wb"))
#and later to add them back:
import pickle
import selenium.webdriver
driver = selenium.webdriver.firefox()
driver.get("")
cookies = pickle.load(open("cookies.pkl", "rb"))
for cookie in cookies:
driver.add_cookie(cookie)
Selenium WebDriver執行緒安全問題
專案中使用webdriver進行服務端渲染,解決seo的問題。但是最近上線的 多了之後,發現googlebot爬蟲同時爬幾個 的的時候,會有串資料的問題。上網搜了一下發現是webdriver不執行緒安全的 專案 中將webdriver宣告成了類成員變數,所以會有執行緒安全問題。於是將webdrive...
selenium webdriver工作原理
1 啟動瀏覽器,selenium webdriver會將目標瀏覽器繫結帶特定的埠,啟動後的瀏覽器則作為webdriver的remote server 服務端 2 客戶端 也就是測試指令碼 傳送http請求給server端。通訊協議 the webdriver wire protocol,在http請...
Selenium WebDriver驅動對照表
chrome 對於chrome瀏覽器,有時候會有閃退的情況,也許是版本衝突的問題,我們要對照著這個表來對照檢視是不是webdriver和chrome版本不對 chromedriver版本 支援的chrome版本 v2.37 v64 66 v2.36 v63 65 v2.35 v62 64 v2.34...