Python自動登入實作 — Chromedriver

操控電腦來對網頁做任何事情 — 以Dcard為例

Toni
Dec 4, 2020

這篇文章主要是將一些登入登出及網頁手動操作的事情做成自動化的形式,下面會以自動登入dcard帳號為例

Chromedriver 簡介:用 python Selenium 開啟,可以模仿人類對網站手動操作的行為,包含自動登入登出、點擊換頁、頁面滑動等等,在網路爬蟲上及網頁自動化非常實用,此篇會介紹如何使用 xpath 使用方式

  • 使用語言:Python
  • 使用工具:Jupyter Notebook, Chromedriver
  • 使用的 Python Package:Selenium

Chromedriver 下載點(版本需與當前瀏覽器版本相同喔)

from selenium import webdriver
driver = webdriver.Chrome('./chromedriver')
driver.get('https://www.dcard.tw/signup')

Step 1:

把 Chromedriver 放在和執行檔同一個資料夾,執行完前面兩行後就會有瀏覽器跳出來,之後可以用 jupyter notebook 對跳出的瀏覽器執行操作

Step 2:點擊 F12 來檢查網頁原始碼,點選小箭頭切換成選取模式,找尋要輸入帳號及密碼的地方,點擊後可以發現原始碼中對應的區塊變成灰色了,右鍵點擊選取 Copy、Copy XPath,就可以回到執行檔了

Step 3:

account = driver.find_element_by_xpath("//*[@id=\"__next\"]/main/div/div/div[2]/div[1]/div[2]/div[3]/form/div[1]/label/div[2]/input")
account.clear()
account.send_keys("Your email Account")

讓 driver 找到對應區塊,clear()清空值後,send_keys 將帳號或密碼傳進去,最後一樣在 xpath 中找到登入按鈕並使用 click() 點下。

driver.find_element_by_xpath('//*[@id="__next"]/main/div/div/div[2]/div[1]/div[2]/div[3]/form/button').click()

下面附上 Github 連結,還有下篇是可能遇到的 Chromedriver 問題

--

--

Toni

EECS畢業|MBA碩士|美商實習|日商實習 順便分享一些Data的小工具, 歡迎寄信到toniintech@gmail.com