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

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

 更新時(shí)間:2023年06月05日 11:45:33   作者:安樂常  
這篇文章主要介紹Python如何實(shí)現(xiàn)自動化網(wǎng)頁操作,文中有詳細(xì)的流程步驟和代碼示例,對我們的學(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庫中的webdriver模塊,實(shí)現(xiàn)對網(wǎng)頁的操作
from selenium import webdriver
#引入By Class,輔助元素定位
from selenium.webdriver.common.by import By
#引入ActionChains Class,輔助鼠標(biāo)移動
from selenium.webdriver.common.action_chains import ActionChains

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

2.1 打開網(wǎng)頁

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

2.2 元素定位

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

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

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

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

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

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

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

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

2.3 元素控制

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

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

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

el.send_keys('*')

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

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

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

time.sleep(1)

2.4 彈出框的處理

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

driver.switch_to.frame(0)

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

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

相關(guān)文章

  • langchain中的chat?models介紹和使用實(shí)例

    langchain中的chat?models介紹和使用實(shí)例

    這篇文章主要介紹了langchain中的chat?models介紹和使用實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • python+elasticsearch實(shí)現(xiàn)標(biāo)簽匹配計(jì)數(shù)操作

    python+elasticsearch實(shí)現(xiàn)標(biāo)簽匹配計(jì)數(shù)操作

    這篇文章主要介紹了python+elasticsearch實(shí)現(xiàn)標(biāo)簽匹配計(jì)數(shù)操作,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-04-04
  • python模塊smtplib學(xué)習(xí)

    python模塊smtplib學(xué)習(xí)

    這篇文章主要為大家詳細(xì)介紹了python模塊smtplib的學(xué)習(xí)相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Python?命令行解析工具?argparse基本用法

    Python?命令行解析工具?argparse基本用法

    在工作中,我們經(jīng)常需要從命令行當(dāng)中解析出指定的參數(shù),而?Python?也提供了相應(yīng)的標(biāo)準(zhǔn)庫來做這件事情,比如?sys,?optparse,?getopt,?argparse,這里面功能最強(qiáng)大的莫過于?argparse,下面就來看看它用法,需要的朋友可以參考下
    2022-12-12
  • Python中位運(yùn)算的詳細(xì)用法教程

    Python中位運(yùn)算的詳細(xì)用法教程

    在Python中,位運(yùn)算是一種對二進(jìn)制數(shù)進(jìn)行操作的運(yùn)算方式,它們直接對二進(jìn)制位進(jìn)行操作,而不考慮這些位所表示的實(shí)際值,本文將詳細(xì)介紹Python中的位運(yùn)算符,需要的朋友可以參考下
    2024-08-08
  • python訪問系統(tǒng)環(huán)境變量的方法

    python訪問系統(tǒng)環(huán)境變量的方法

    這篇文章主要介紹了python訪問系統(tǒng)環(huán)境變量的方法,涉及Python操作系統(tǒng)環(huán)境變量的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • Python實(shí)現(xiàn)定時(shí)精度可調(diào)節(jié)的定時(shí)器

    Python實(shí)現(xiàn)定時(shí)精度可調(diào)節(jié)的定時(shí)器

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)定時(shí)精度可調(diào)節(jié)的定時(shí)器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python如何利用cv2.rectangle()繪制矩形框

    python如何利用cv2.rectangle()繪制矩形框

    cv2.rectangle這個(gè)函數(shù)的作用是在圖像上繪制一個(gè)簡單的矩形,下面這篇文章主要給大家介紹了關(guān)于python如何利用cv2.rectangle()繪制矩形框的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • python字符串反轉(zhuǎn)的四種方法詳解

    python字符串反轉(zhuǎn)的四種方法詳解

    這篇文章主要介紹了python字符串反轉(zhuǎn)的四種詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Python Pydantic進(jìn)行數(shù)據(jù)驗(yàn)證的方法詳解

    Python Pydantic進(jìn)行數(shù)據(jù)驗(yàn)證的方法詳解

    在 Python 中,有許多庫可用于數(shù)據(jù)驗(yàn)證和處理,其中一個(gè)流行的選擇是 Pydantic,下面就跟隨小編一起學(xué)習(xí)一下Pydantic 的基本概念和用法吧
    2024-01-01

最新評論