欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python爬蟲之Selenium下拉框處理的實現(xiàn)

 更新時間:2020年12月04日 12:04:46   作者:程序猿雜記  
這篇文章主要介紹了Python爬蟲之Selenium下拉框處理的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在我們?yōu)g覽網(wǎng)頁的時候經(jīng)常會碰到下拉框,WebDriver提供了Select類來處理下拉框,詳情請往下看:

本章中用到的關(guān)鍵方法如下:

from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.support.select import Select
import time
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')

# 鼠標懸停至“設(shè)置”鏈接
link = driver.find_element_by_link_text('設(shè)置')
ActionChains(driver).move_to_element(link).perform()
time.sleep(2) #睡兩秒,看一下效果

# 打開搜索設(shè)置
driver.find_element_by_link_text("搜索設(shè)置").click()
time.sleep(2) #睡兩秒,看一下效果

# 搜索結(jié)果顯示條數(shù)
sel = driver.find_element_by_xpath("http://select[@id='nr']")
Select(sel).select_by_value('50') # 顯示50條
time.sleep(2) #睡兩秒,看一下效果

# 保存設(shè)置
driver.find_element_by_class_name("prefpanelgo").click()
time.sleep(2) #睡兩秒,看一下效果

# 定位并接受現(xiàn)有警告框
alert = driver.switch_to.alert.accept()
time.sleep(2) #睡兩秒,看一下效果

driver.quit()

select類中的函數(shù)列表

函數(shù) 解析
options 返回select元素所有的options
all_selected_options 返回select元素中所有已選中的選項
first_selected_option 返回select元素中選中的第一個選項
select_by_index(index) 通過索引定位,index索引是從“0”開始
select_by_value(value) 通過value屬性值定位
select_by_visible_text(text)t 通過文本值定位,visible_text是在option標簽中間的值,即顯示在下拉框的值;
deselect_all() 取消全部的已選擇項
deselect_by_index(index) 取消已選中的索引項
deselect_by_value(value) 取消已選中的value值
deselect_by_visible_text(text) 取消已選中的文本值

舉例

html如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>我是標題</title>
</head>
<body>
<!--select標簽-->
<select name="city" size="5" multiple="multiple">
 <option value="1" tabindex="1">北京</option>
 <option value="2" tabindex="2" selected="selected">河南</option>
 <option value="3" tabindex="3">河北</option>
 <option value="4" tabindex="4">山東</option>
 <option value="5" tabindex="5">上海</option>
</select>

</body>
</html>

from selenium import webdriver
from selenium.webdriver.support.select import Select
import time

driver = webdriver.Chrome(r"D:\browser\chromedriver\chromedriver.exe")
driver.get("http://localhost:63342/ui_test/select%E6%A0%87%E7%AD%BE.html")

driver.maximize_window()

ele = driver.find_element_by_name("city")
select = Select(ele)
select.select_by_value("3") # 選中"河北"
time.sleep(3)
select.select_by_index(0) # 選中"北京"
time.sleep(3)
select.deselect_by_value("3") # 取消選中"河北"
time.sleep(3)
select.deselect_by_index(0) # 取消選中"北京"
time.sleep(3)
driver.quit()

Selenium文集傳送門:

標題 簡介
Python爬蟲 - Selenium(1)安裝和簡單使用 詳細介紹Selenium的依賴環(huán)境在Windows和Centos7上的安裝及簡單使用
Python爬蟲 - Selenium(2)元素定位和WebDriver常用方法 詳細介紹定位元素的8種方式并配合點擊和輸入、提交、獲取斷言信息等方法的使用
Python爬蟲 - Selenium(3)控制瀏覽器的常用方法 詳細介紹自定義瀏覽器窗口大小或全屏、控制瀏覽器后退、前進、刷新瀏覽器等方法的使用
Python爬蟲 - Selenium(4)配置啟動項參數(shù) 詳細介紹Selenium啟動項參數(shù)的配置,其中包括無界面模式、瀏覽器窗口大小設(shè)置、瀏覽器User-Agent (請求頭)等等
Python爬蟲 - Selenium(5)鼠標事件 詳細介紹鼠標右擊、雙擊、拖動、鼠標懸停等方法的使用
Python爬蟲 - Selenium(6)鍵盤事件 詳細介紹鍵盤的操作,幾乎包含所有常用按鍵以及組合鍵
Python爬蟲 - Selenium(7)多窗口切換 詳細介紹Selenium是如何實現(xiàn)在不同的窗口之間自由切換
Python爬蟲 - Selenium(8)frame/iframe表單嵌套頁面 詳細介紹如何從當(dāng)前定位的主體切換為frame/iframe表單的內(nèi)嵌頁面中
Python爬蟲 - Selenium(9)警告框(彈窗)處理 詳細介紹如何定位并處理多類警告彈窗
Python爬蟲 - Selenium(10)下拉框處理 詳細介紹如何靈活的定位并處理下拉框
Python爬蟲 - Selenium(11)文件上傳 詳細介紹如何優(yōu)雅的通過send_keys()指定文件進行上傳
Python爬蟲 - Selenium(12)獲取登錄Cookies,并添加Cookies自動登錄 詳細介紹如何獲取Cookies和使用Cookies進行自動登錄
Python爬蟲 - Selenium(13)設(shè)置元素等待 詳細介紹如何優(yōu)雅的設(shè)置元素等待時間,防止程序運行過快而導(dǎo)致元素定位失敗
Python爬蟲 - Selenium(14)窗口截圖 詳細介紹如何使用窗口截圖
Python爬蟲 - Selenium(15)關(guān)閉瀏覽器 詳細介紹兩種關(guān)閉窗口的區(qū)別

到此這篇關(guān)于Python爬蟲之Selenium下拉框處理的實現(xiàn)的文章就介紹到這了,更多相關(guān)Selenium 下拉框內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python使用turtule畫五角星的方法

    Python使用turtule畫五角星的方法

    這篇文章主要介紹了Python使用turtule畫五角星的方法,運行該程序可以看到箭頭間歇移動繪制五角星的效果,涉及Python使用turtle及time模塊繪制圖形的相關(guān)技巧,需要的朋友可以參考下
    2015-07-07
  • Python 如何將integer轉(zhuǎn)化為羅馬數(shù)(3999以內(nèi))

    Python 如何將integer轉(zhuǎn)化為羅馬數(shù)(3999以內(nèi))

    這篇文章主要介紹了Python 將integer轉(zhuǎn)化為羅馬數(shù)(3999以內(nèi))的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Python從臨時郵箱獲取驗證碼的操作代碼

    Python從臨時郵箱獲取驗證碼的操作代碼

    這篇文章主要介紹了Python從臨時郵箱獲取驗證碼的操作代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08
  • Python基礎(chǔ)類繼承重寫實現(xiàn)原理解析

    Python基礎(chǔ)類繼承重寫實現(xiàn)原理解析

    這篇文章主要介紹了Python基礎(chǔ)類繼承重寫實現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 詳解pandas安裝若干異常及解決方案總結(jié)

    詳解pandas安裝若干異常及解決方案總結(jié)

    這篇文章主要介紹了詳解pandas安裝若干異常及解決方案總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python3.9新特性詳解

    Python3.9新特性詳解

    這篇文章主要介紹了Python3.9新特性詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • python實現(xiàn)bilibili動畫下載視頻批量改名功能

    python實現(xiàn)bilibili動畫下載視頻批量改名功能

    這篇文章主要介紹了python實現(xiàn)bilibili動畫下載視頻批量改名,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-11-11
  • python遞歸函數(shù)繪制分形樹的方法

    python遞歸函數(shù)繪制分形樹的方法

    這篇文章主要為大家詳細介紹了python遞歸函數(shù)繪制分形樹的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • pyqt5 鍵盤監(jiān)聽按下enter 就登陸的實例

    pyqt5 鍵盤監(jiān)聽按下enter 就登陸的實例

    今天小編就為大家分享一篇pyqt5 鍵盤監(jiān)聽按下enter 就登陸的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python圖像處理之膨脹與腐蝕的操作

    Python圖像處理之膨脹與腐蝕的操作

    這篇文章主要介紹了Python圖像處理之膨脹與腐蝕的操作,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02

最新評論