系統環境:Ubuntu20.04
selenium 是一個用於Web應用程序測試的工具。Selenium測試直接運行在浏覽器中,就像真正的用戶在操作一樣。支持的浏覽器包括IE(7~11)、Mozilla Firefox、Safari、Google Chrome、Opera、Edge等。這個工具的主要功能包括:測試與浏覽器的兼容性——測試你的應用程序看是否能夠很好得工作在不同浏覽器和操作系統之上。測試系統功能——創建回歸測試檢驗軟件功能和用戶需求。支持自動錄制動作和自動生成 .Net、Java、Perl等不同語言的測試腳本。
selenium安裝指令:
sudo pip3 install selenium
以google-chrome與chromedriver為例。
首先,查詢google-chome版本。
google-chrome --version
然後,在下面地址上找到版本最接近(否則無法使用)的chromedriver下載解壓。
CNPM Binaries Mirrorhttp://npm.taobao.org/mirrors/chromedriver/接著,在chromedriver解壓路徑下打開terminal,執行一下指令替換掉系統的chromedriver。
sudo mv -f chromedriver /usr/local/share/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver
chromedriver --version
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep
url = 'https://blog.csdn.net/qq_15711195?spm=1018.2226.3001.5343'
option = webdriver.ChromeOptions()
option.add_experimental_option('detach', True)
browser = webdriver.Chrome(options=option)
browser.get(url)
#修改name參數值
new_name = 'haha'
name = browser.find_element_by_id('name')
name.clear()
name.send_keys(new_name)
#勾選flag-checkbox選框。後續修改若在此基礎上進行,須等待一點時間
flag_checkbox = browser.find_element_by_id('flag-checkbox')
if not flag_checkbox.is_selected():
flag_checkbox.click()
sleep(1)
#點擊保存按鈕。當button上有裹了一層div時,最好用xpath語句的形式定位按鈕
button_path = "//div[@class='btn-submit']/button[@type='button']"
save_button = browser.find_element_by_xpath(button_path)
save_button.send_keys(Keys.ENTER)
# 執行點擊操作時,也可以用下面這種方式。當網頁信息丟失時可能會卡住。
# browser.execute_script('arguments[0].click()', save_button)
# 可以直接quit。當手動關閉網頁在close之前時,會導致close報錯。
browser.close()
browser.quit()
【1】什麼是Selenium WebDriver_簡單快樂_wsh的博客
【2】Selenium WebDriver基礎操作教程_bizcatt的博客(含driver下載)
【3】如何在Ubuntu下安裝配置Selienium與chrome webdriver_nice970111的博客