基於Python+selenium+Chrome的網頁自動化教程


基於Python+selenium+Chrome的網頁自動化教程

Python版本:Python2.7

Selenium版本:selenium3

Chrome版本:

瀏覽器驅動(chromedriver)版本:

Python的安裝

Python下載鏈接:https://www.python.org/

python安裝完成后 ctrl+R輸入cmd進入命令行界面,輸入Python再按回車,如果出現Python版本信息則安裝成功

 

Python安裝selenium分為在線安裝和離線安裝。

離線安裝:

Selenium下載鏈接:https://pan.baidu.com/s/1fvX-ZUbQNQpLbUV7SEb71A 密碼:pnya

安裝步驟:

1、 將selenium文件拷貝到Python的安裝目錄的Scripts目錄下,在頂部導航欄輸入cmd再按回車進入命令行界面,

2、 輸入pip install selenium-3.11.0-py2.py3-none-any.whl 進行安裝,可能會出現pip版本不適用的情況,忽略掉就行了。

3、 安裝完成后輸入pip list查看是否安裝成功

 

在線安裝:

1、 ctrl+R進入命令行界面

2、 輸入pip install selenium,點擊回車

3、 完成下載、安裝

4、 輸入pip list 查看是否安裝成功

 

驅動下載:

       驅動版本與谷歌瀏覽器的版本相關,先查看自己電腦中安裝的Chrome瀏覽器版本,然后根據版本號下載對應的驅動,可能有多個驅動適配該版本的瀏覽器,隨便下一個就行了。

下載鏈接:http://chromedriver.storage.googleapis.com/index.html

 

編碼:

1、 創建一個目錄,命名為atuotest

2、 在autotest下創建一個名為res的目錄,將驅動拷貝進去

3、 在autotest目錄下點擊鼠標右鍵新建一個文本文件,修改名稱為“main.py”,一定要將后綴改為“py”

 

運行腳本:

       在autotest目錄地址欄中輸入“cmd”進入命令行界面,輸入“Python main.py”點擊回車即可開始運行腳本

 

Python基礎:

Python支持面向對象編程和面向過程編程。為了簡單,我們下面寫的都是面向過程編程。

       Python基礎教程:http://www.runoob.com/python3/python3-tutorial.html

代碼結構可見:python.jpg

 

網頁知識基礎:

       HTML:網頁結構

       HTML基礎教程:http://www.runoob.com/html/html-tutorial.html

       CSS:網頁樣式,比如長寬、背景等

       JavaScript:動畫效果、頁面更新

Selenium基礎:

1、 定位頁面元素的方法

find_element_by_name() – 通過元素的name來查找元素

find_element_by_class_name() – 通過class 來查找

find_element_by_tag_name() – 通過元素的類型來查找,一般不用這種方式

find_element_by_link_text() – 通過鏈接地址來查找元素

find_element_by_partial_link_text()

find_element_by_xpath() – 通過xpath來查找元素

find_element_by_css_selector() – 通過css樣式來查找元素

 

如圖,百度輸入框有“id”、“name”、“class”等屬性,所以查找這個輸入框元素可以任選其一進行查找

 

如果想要點擊“視頻”這個鏈接,可以發現這個鏈接有“href”、“name”、“class”等屬性,可以通過find_element_by_link_text()查找href來定位這個元素,同樣也可以用name、class來定位

 

2、 操作元素

clear() – 清除元素內容,一般是清除輸入框中的數據

send_keys() – 在元素中模擬按鍵輸入

click() – 點擊元素

submit()  -- 提交表單

text() – 獲取該元素的文本信息

get_attribute(name) – 獲取該元素name屬性的值

 

3、 鼠標事件

context_click() – 點擊右鍵

double_click() – 雙擊鼠標

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM