最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)自動(dòng)化網(wǎng)頁(yè)操作步驟

 更新時(shí)間:2023年06月05日 11:45:33   作者:安樂常  
這篇文章主要介紹Python如何實(shí)現(xiàn)自動(dòng)化網(wǎng)頁(yè)操作,文中有詳細(xì)的流程步驟和代碼示例,對(duì)我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下

1 準(zhǔn)備

推薦使用Chrome瀏覽器

1.1 安裝selenium程序包

激活虛擬環(huán)境,打開新的Terminal,輸入以下代碼:

python -m pip install selenium

如下圖所示,表示安裝成功,版本為4.7.2

關(guān)閉虛擬環(huán)境,打開新的Terminal

1.2 引入函數(shù)模塊

#引入time模塊,實(shí)現(xiàn)延時(shí)
import time
#引入selenium庫(kù)中的webdriver模塊,實(shí)現(xiàn)對(duì)網(wǎng)頁(yè)的操作
from selenium import webdriver
#引入By Class,輔助元素定位
from selenium.webdriver.common.by import By
#引入ActionChains Class,輔助鼠標(biāo)移動(dòng)
from selenium.webdriver.common.action_chains import ActionChains

2 實(shí)現(xiàn)

2.1 打開網(wǎng)頁(yè)

#打開谷歌瀏覽器
driver = webdriver.Chrome() 
#打開網(wǎng)頁(yè)
driver.get('URL') #將URL替換為需要操作的網(wǎng)址

2.2 元素定位

要想實(shí)現(xiàn)對(duì)網(wǎng)頁(yè)的控制,需要首先定位網(wǎng)頁(yè)上的元素,一般為搜索框、選項(xiàng)、按鈕等。

selenium 4.0以上的版本更新了元素定位方式,要用到find_element函數(shù),用法舉例如下:

el = driver.find_element(By.NAME, "*")

首先要獲取元素的信息:
打開網(wǎng)頁(yè)后,按F12,打開元素審查窗口

點(diǎn)擊窗口中紅框標(biāo)出的圖標(biāo),即可在頁(yè)面上選擇需要定位的元素,查看其代碼。
一般需要定位的元素代碼都以input開頭,下圖為搜索框的代碼,從代碼中可以提取定位元素所需要的信息:

根據(jù)下列信息均可以定位元素,但要保證根據(jù)該信息可以唯一定位到該元素:

By.*
NAMEname=“*”
CLASS_NAMEclass_name=“*”
IDid=“*”
TAG_NAMEtag_name=“*”
LINK_TEXT
PARTIAL_LINK_TEXT
CSS_SELECTOR
XPATHCopy full XPath

如果根據(jù)其他信息無(wú)法唯一定位該元素,可以采取XPath定位,XPath的獲取方式比較特殊,需要右鍵單擊該代碼行,在下拉列表中選擇Copy full XPath,如下圖所示:

2.3 元素控制

定位到元素后,可以進(jìn)行下列操作,實(shí)現(xiàn)對(duì)元素的控制:

method功能
click()點(diǎn)擊
send_keys(‘*’)輸入
clear()清空

以輸入文字為例,代碼如下(*為需要輸入的文字):

el.send_keys('*')

如果打開網(wǎng)頁(yè)時(shí),需要控制的元素不在可視范圍內(nèi),需要滑動(dòng)鼠標(biāo)定位,則要借助于ActionChains,否則可能會(huì)報(bào)錯(cuò):找不到該元素。

ActionChains(driver).move_to_element(el).click().perform()
el.click()

上述示例為點(diǎn)擊操作,其中第二行最好加上,確保點(diǎn)到該元素
另外一種找不到元素的原因可能是網(wǎng)頁(yè)還沒有加載完畢,此時(shí)就可以借助于延時(shí)功能:

time.sleep(1)

2.4 彈出框的處理

如果點(diǎn)擊按鈕后,不是打開一個(gè)新的頁(yè)面,而是彈出了一個(gè)窗口,需要在新的窗口中操作,則需要通過(guò)如下代碼轉(zhuǎn)到新的frame下,否則可能會(huì)報(bào)錯(cuò):找不到該元素。

driver.switch_to.frame(0)

隨后繼續(xù)按2.2定位元素即可。

到此這篇關(guān)于Python實(shí)現(xiàn)自動(dòng)化網(wǎng)頁(yè)操作步驟的文章就介紹到這了,更多相關(guān)Python 自動(dòng)化網(wǎng)頁(yè)操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 讀取二進(jìn)制 顯示圖片案例

    python 讀取二進(jìn)制 顯示圖片案例

    這篇文章主要介紹了python 讀取二進(jìn)制 顯示圖片案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • Django app配置多個(gè)數(shù)據(jù)庫(kù)代碼實(shí)例

    Django app配置多個(gè)數(shù)據(jù)庫(kù)代碼實(shí)例

    這篇文章主要介紹了Django app配置多個(gè)數(shù)據(jù)庫(kù)代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • pycharm快捷鍵自動(dòng)提示documentation問題(auto?Ctrl+Q)

    pycharm快捷鍵自動(dòng)提示documentation問題(auto?Ctrl+Q)

    這篇文章主要介紹了pycharm快捷鍵自動(dòng)提示documentation問題(auto?Ctrl+Q),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • es+flask搜索小項(xiàng)目實(shí)現(xiàn)分頁(yè)+高亮的示例代碼

    es+flask搜索小項(xiàng)目實(shí)現(xiàn)分頁(yè)+高亮的示例代碼

    本文主要介紹了es+flask搜索小項(xiàng)目實(shí)現(xiàn)分頁(yè)+高亮的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解python tkinter教程-事件綁定

    詳解python tkinter教程-事件綁定

    這篇文章主要介紹了python tkinter事件綁定,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Jupyter notebook如何實(shí)現(xiàn)指定瀏覽器打開

    Jupyter notebook如何實(shí)現(xiàn)指定瀏覽器打開

    這篇文章主要介紹了Jupyter notebook如何實(shí)現(xiàn)指定瀏覽器打開,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • python實(shí)現(xiàn)一個(gè)簡(jiǎn)單RPC框架的示例

    python實(shí)現(xiàn)一個(gè)簡(jiǎn)單RPC框架的示例

    本文將會(huì)使用Python實(shí)現(xiàn)一個(gè)最簡(jiǎn)單的RPC框架,不具有實(shí)用意義,但可以讓你清醒地理解RPC框架的幾個(gè)組成部分,只是比看Python自帶的xmlrpc清晰。
    2020-10-10
  • 詳解Python中使用base64模塊來(lái)處理base64編碼的方法

    詳解Python中使用base64模塊來(lái)處理base64編碼的方法

    8bit的bytecode經(jīng)常會(huì)被用base64編碼格式保存,Python中自帶base64模塊對(duì)base64提供支持,這里我們就來(lái)詳解Python中使用base64模塊來(lái)處理base64編碼的方法,需要的朋友可以參考下
    2016-07-07
  • Python使用DrissionPage中ChromiumPage進(jìn)行自動(dòng)化網(wǎng)頁(yè)操作

    Python使用DrissionPage中ChromiumPage進(jìn)行自動(dòng)化網(wǎng)頁(yè)操作

    DrissionPage 作為一款輕量級(jí)且功能強(qiáng)大的瀏覽器自動(dòng)化庫(kù),為開發(fā)者提供了豐富的功能支持,本文將使用DrissionPage中ChromiumPage進(jìn)行自動(dòng)化網(wǎng)頁(yè)操作,希望對(duì)大家有所幫助
    2025-03-03
  • Python腳本處理空格的方法

    Python腳本處理空格的方法

    這篇文章主要介紹了Python腳本處理空格的方法,解決方案非常簡(jiǎn)單,但是好多朋友都不知道,下面小編把解決方案分享到腳本之家平臺(tái),供大家參考
    2016-08-08

最新評(píng)論

宜城市| 胶南市| 博野县| 大港区| 河池市| 漾濞| 兰考县| 台北县| 武宁县| 巫山县| 股票| 怀宁县| 广水市| 高州市| 安顺市| 河间市| 章丘市| 安阳市| 桃源县| 沾化县| 沙洋县| 沂南县| 卢氏县| 招远市| 桐梓县| 仙桃市| 宁化县| 泽州县| 镇安县| 绵竹市| 平和县| 南涧| 宜兰市| 噶尔县| 瑞丽市| 东源县| 南靖县| 忻州市| 新津县| 盘锦市| 江孜县|