Python selenium的基本使用方法分析
本文實例講述了Python selenium的基本使用方法。分享給大家供大家參考,具體如下:
selenium是一個web自動化測試工具,selenium可以直接運行在瀏覽器上,可以接收指令,讓瀏覽器自動加載頁面,獲取需要的數(shù)據(jù)。
selenium的基本使用
1.導包
from selenium import webdriver
2.創(chuàng)建driver對象
webdriver.PhantomJS()
3.請求數(shù)據(jù)
driver.get("http://www.baidu.com")
4.查看網(wǎng)頁源碼
driver.page_source
5.關閉無界面瀏覽器
driver.quit()
6.根據(jù)id定位元素
drivrt.find_element_by_id("kw")
7.操作點擊事件
click()
8.給輸入框賦值
send_keys()
selenium的定位操作
定位元素語法:
find_element_by_id(返回一個元素)
find_elements_by_xpath(返回一個包含元素的列表)
find_elements_by_link_text(根據(jù)連接文本獲取元素列表)
find_elements_by_partial_link_text(根據(jù)鏈接包含的文本獲取元素列表)
find_elements_by_tag_name(根據(jù)標簽名獲取元素列表)
find_elements_bu_class_name(根據(jù)類名獲取元素列表)
注意
find_element和find_elements的區(qū)別:多了個s返回列表,沒有s的返回匹配到的第一個。
獲取數(shù)據(jù)
獲取文本:element.text
獲取屬性值:element.get_attribute("href")
selenium的其他方法
selenium處理cookie
driver.get_cookies(),獲取的是完整的cookie信息,不光有name、value,還有domain等其他信息。
# 把cookie轉(zhuǎn)換為字典
cookies_dict = {cookie['name']: cookie['value'] for cookie in driver.get_cookies()}
# 刪除一條cookie
driver.delete_cookie("CookieName")
# 刪除所有cookie
driver.delete_all_cookies()
頁面等待
time.sleep(10)
selenium執(zhí)行js代碼
driver.execute_script('js語句')
switch方法切換的操作
1.窗口切換
# 獲取當前所有的窗口 current_windows = driver.window_handles # 根據(jù)窗口索引進行切換 driver.switch_to.window(current_windows[1])
2.selenium默認訪問不了frame中的內(nèi)容,對應解決的方法是driver.switch_to.frame()
3.處理頁面彈窗提示
driver.switch_to.alert()
頁面前進和后退
driver.forward() # 前進 driver.back(() # 后退
selenium的優(yōu)缺點
- 優(yōu)點:selenium能夠執(zhí)行頁面上的js,對于js渲染的數(shù)據(jù)和模擬登陸處理起來較容易。
- 缺點:selenium由于在獲取頁面過程會發(fā)送很多請求,所以效率非常低。
更多關于Python相關內(nèi)容可查看本站專題:《Python Socket編程技巧總結》、《Python正則表達式用法總結》、《Python數(shù)據(jù)結構與算法教程》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
- python爬蟲selenium和phantomJs使用方法解析
- Python中使用 Selenium 實現(xiàn)網(wǎng)頁截圖實例
- Python使用selenium實現(xiàn)網(wǎng)頁用戶名 密碼 驗證碼自動登錄功能
- python編程使用selenium模擬登陸淘寶實例代碼
- selenium+python自動化測試之使用webdriver操作瀏覽器的方法
- 淺談python爬蟲使用Selenium模擬瀏覽器行為
- 如何在python中使用selenium的示例
- Python使用Selenium+BeautifulSoup爬取淘寶搜索頁
- python使用selenium實現(xiàn)批量文件下載
- Python使用Selenium爬取淘寶異步加載的數(shù)據(jù)方法
- python使用selenium登錄QQ郵箱(附帶滑動解鎖)
- Python使用Selenium模塊模擬瀏覽器抓取斗魚直播間信息示例
相關文章
細數(shù)nn.BCELoss與nn.CrossEntropyLoss的區(qū)別
今天小編就為大家整理了一篇細數(shù)nn.BCELoss與nn.CrossEntropyLoss的區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
對python numpy數(shù)組中冒號的使用方法詳解
下面小編就為大家分享一篇對python numpy數(shù)組中冒號的使用方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04
python使用xlrd與xlwt對excel的讀寫和格式設定
最近在用python處理excel表的時候出現(xiàn)了一些問題,所以想著記錄下最后的實現(xiàn)方式和問題解決方法。方便自己或者大家在有需要的時候參考借鑒,下面這篇文章主要就介紹了python使用xlrd與xlwt對excel的讀寫和格式設定的相關資料,一起來學習學習吧。2017-01-01
一分鐘帶你上手Python調(diào)用DeepSeek的API
最近DeepSeek非?;?作為一枚對前言技術非常關注的程序員來說,自然都想對接DeepSeek的API來體驗一把,下面小編就來為大家介紹一下Python如何快速上手調(diào)用DeepSeek?API吧2025-02-02

