Selenium 使用

Undefined443發表於2024-06-20

Selenium 用於控制瀏覽器完成一系列自動化操作。

安裝

pip install selenium

還需安裝瀏覽器驅動:

  • 對於 Chrome,需要安裝 ChromeDriver
  • 對於 Firefox,需要安裝 GeckoDriver

ChromeDriver 和 GeckoDriver 可以透過包管理器 APT 或者 Homebrew 安裝。

示例

使用 Google 搜尋“Selenium”關鍵詞並在命令列輸出找到的結果:

from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By

# 1. 使用驅動例項開啟會話
driver = webdriver.Chrome()

# 2. 在瀏覽器上執行操作
driver.get("https://google.com") # 導航到一個網頁
sleep(1)

# 3. 請求瀏覽器資訊
title = driver.title
print(f"Title: {title}")

# 4. 建立等待策略
driver.implicitly_wait(0.5) # 如果在指定時間內沒有找到元素,則丟擲 NoSuchElementException 異常。

# 5. 傳送命令查詢元素
text_box = driver.find_element(by=By.CSS_SELECTOR, value="textarea") # 透過 CSS 選擇器查詢元素

# 6. 操作元素
text_box.send_keys("Selenium")
sleep(1)
text_box.submit()
sleep(1)

# 7. 獲取元素資訊
answers = driver.find_elements(by=By.TAG_NAME, value="h3") # 透過標籤名查詢元素
print("Answers:")
for i, answer in enumerate(answers):
    print(f"{i + 1}. {answer.text}")

# 8. 結束會話
driver.quit()

參考:

  • 編寫第一個 Selenium 指令碼 | Selenium

See also:

  • Selenium 文件
  • 等待 | Selenium
  • 導航 | Selenium
  • 操作 | Selenium

相關文章