Selenium 學習筆記 (一)
Selenium學習筆記
有用的連結
- selenium 官網: https://www.selenium.dev/
- Chromedriver 下載連結: https://chromedriver.chromium.org/
- webDriver的語法: https://www.selenium.dev/documentation/zh-cn/webdriver/
- webdriver cookie的程式碼使用: https://www.selenium.dev/documentation/zh-cn/support_packages/working_with_cookies/ 環境: Mac OS, Java
安裝
- maven install selenium
<dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>3.141.59</version> </dependency>
java - chromeDriver install
- 下載 WebDriver 二進位制檔案: https://chromedriver.chromium.org/
- 系統 PATH 環境變數:
export PATH=$PATH:/opt/WebDriver/bin >> ~/.profile
, 使用chromedriver命令檢測是否安裝成功
- chrome debug
- 找到google chrome存放的位置, 再配置環境變數
-
Google\ Chrome --remote-debugging-port=9222
使用這個命令檢視, 是否配置好. Google Chrome之間是空格, 命令列時,不要忘記新增反斜槓
程式碼編寫
獲得頁面
driver.get(String url)
public static void setup(){
System.setProperty("webdriver.chrome.driver", "/Users/xhou/WebDriver/bin/chromedriver");
WebDriver webDriver=new ChromeDriver();
webDriver.get("https://work.weixin.qq.com/wework_admin/frame");
}
get程式碼如下:
瀏覽器頁面複用
- 在瀏覽器全部關閉的情況下, 開啟debug模式:
Google\ Chrome --remote-debugging-port=9222
- 在程式碼中作如下編寫
cookie使用
- 文件: https://www.selenium.dev/documentation/zh-cn/support_packages/working_with_cookies/
-
儲存cookie
- 開啟頁面;
- 掃碼/賬號登入
- 使用瀏覽器複用技術, 在同一個瀏覽器載入頁面,在這一步, webdriver裡才獲取了登入後的cookie
- 把cookie存入文件,或變數. 現在的程式碼是存入文件
-
設定cookie
- 開啟頁面
- 從文件裡讀出cookie, 再設定到webDriver中
- 可以看到瀏覽器自動登入了
讀寫程式碼總結
- FileReader & FileReader
- 區別: 是否耗費IO
- Buffered使用緩衝區的, FileReader是一個位元組一個位元組讀, 很耗費IO, 效能差; BufferedReader是放入緩衝區, 再從緩衝區讀取, 效能好
- FileWriter & BufferedWriter
- 區別: 是否耗費IO
- Buffered使用緩衝區的, 所以bufferedWriter.write(String s)後, 一定要使用bufferedWriter.flush(), 不然資料不會寫進文件
- FileReader/FileReader/FileWriter/BufferedWriter 一定要記得close()
String.split(regex,limit)用法
案例: String date = "date:Wed Jan 10 10:43:36 CST 2012 "
我想取date後面的內容: date.split[":",2]
SimpleDateFormat的用法
參考資料: https://www.runoob.com/java/java-date-time.html
Date dateValue = new Date()
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH);
date = simpleDateFormat.parse(dateValue);
相關文章
- 學習筆記(一)筆記
- kitten 學習教程(一) 學習筆記筆記
- LaTeX學習筆記:一筆記
- ANFIS學習筆記(一)筆記
- Angular 學習筆記(一)Angular筆記
- GOLang 學習筆記(一)Golang筆記
- oracle學習筆記《一》Oracle筆記
- React 學習筆記【一】React筆記
- Jquery學習筆記(一)jQuery筆記
- goLang學習筆記(一)Golang筆記
- Canvas學習筆記(一)Canvas筆記
- SCSS學習筆記(一)CSS筆記
- vue學習筆記一Vue筆記
- Kettle學習筆記(一)筆記
- kafka學習筆記(一)Kafka筆記
- Cesium學習筆記(一)筆記
- opencv學習筆記(一)OpenCV筆記
- 深度學習 筆記一深度學習筆記
- javaNIO學習筆記一Java筆記
- Maven 學習筆記一Maven筆記
- css學習筆記(一)CSS筆記
- 學習Mysql筆記(一)MySql筆記
- redux 學習筆記(一)Redux筆記
- clojure學習筆記(一)筆記
- git學習筆記(一)Git筆記
- SQLite學習筆記(一)SQLite筆記
- 【筆記】statspack 學習(一)筆記
- undo 學習筆記一筆記
- mongodb學習筆記一MongoDB筆記
- Jquery學習筆記一jQuery筆記
- Lua學習筆記(一)筆記
- unity學習筆記(一)Unity筆記
- TS學習筆記(一)筆記
- 高等數學學習筆記(一)筆記
- Python 學習筆記(一)Python筆記
- github--學習筆記(一)Github筆記
- Apache Oozie學習筆記(一)Apache筆記
- MySQL學習筆記之一MySql筆記