網站首頁 編程語言 正文
Selenium介紹
??Selenium 是支持web瀏覽器自動化的一系列工具和庫的綜合項目,Selenium 的核心是 WebDriver,這是一個編寫指令集的接口,可以在許多瀏覽器中互換運行。
環境搭建
Python安裝
mac系統自帶的Python版本是2.7(版本低),直接通過命令brew install python3安裝即可
通過which python3查看安裝位置
在終端運行python3,看到下面的畫面,就說明Python安裝成功!
安裝Pycharm
- 在Pycharm官網下載
- 編輯器創建文件夾(例如selecode)
- Pycharm打開selecode文件夾,進行如下設置
selenium安裝
pip安裝
1.1 下載pip
curl https://bootstrap.pypa.io/pip/get-pip.py -o get-pip.py
1.2 安裝
通過pip安裝selenium
pip install selenium
查看selenium
pip show selenium
WebDriver安裝
查看瀏覽器版本,WebDriver版本需要和瀏覽器版本保持一致
下載和瀏覽器對應版本的WebDriver
添加環境變量
vim ~/.profile
export PATH="$PATH:/usr/local/chromedriver"
source ~/.profile
3.1 mac還需要添加信任,在webdriver目錄下,執行
chromedriver % xattr -d com.apple.quarantine chromedriver
3.2 在控制臺測試下是否生效
selemium的基本使用
創建python文件
郵件運行下方demo代碼,查看效果
元素定位
ID定位
xpath定位(直接Copy full Xpath)
多窗口
在selenium中,通過一個隨機生成的字符串(uuid)來唯一標識某個窗口
執行js:window.open打開新窗口
new = 'window.open("https://service.homepartners.tech/sso/Account/Login?ReturnUrl=%2Fsso%2Fconnect%2Fauthorize' \
'%2Fcallback%3Fclient_id%3Dhpa-ctm-vendor-portal%26redirect_uri%3Dhttps%253A%252F%252Fvendor.homepartners.tech' \
'%252Fcallback%26response_type%3Dtoken%2520id_token%26scope%3Dopenid%2520profile%2520vendor-api%2520foundation' \
'-api%26state%3D5a6d7d6d84264b828f02081ac9fb1c3a%26nonce%3D7cb02e1da5214cd0828d4373b29e5b66"); '
driver.execute_script(new)
handler的獲取
3.1 獲取所有:driver.window_handlers
3.2 獲取單個:driver.current_window_handle
3.3 切換:driver.switch_to_window(handle)
結束語
??通過上述操作就可以做一些簡單的demo,但如何出報表?如何工程化?以及后續怎么部署迭代?還需要進一步去學習
原文鏈接:https://blog.csdn.net/weixin_40803011/article/details/126170868
相關推薦
- 2022-11-03 Python列表推導式,元組推導式,字典推導式,集合推導式_python
- 2022-01-17 uniapp/小程序 swiper組件無限數據滾動
- 2022-09-08 python如何獲取tensor()數據類型中的值_python
- 2022-04-25 關于vscode?默認添加python項目的源目錄路徑到執行環境的問題_python
- 2022-07-12 CSS樣式:行內元素 盒子模型
- 2022-06-01 C#類型轉換之自定義隱式轉換和顯式轉換_C#教程
- 2022-08-07 API處理Android安全距離詳情_Android
- 2022-07-17 使用SQL語句實現查詢排序,順序和倒序_MsSql
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支