動態網頁爬蟲第一道鎖 — Selenium教學:如何使用Webdriver、send_keys(附Python 程式碼)

  1. Selenium 介紹
  2. Selenium 安裝
  3. Webdriver 下載
  4. Chromedriver 使用
  5. 使用Selenium輸入及點擊
  6. send_keys模擬鍵盤輸入
  7. 瀏覽紀錄

1. Selenium 介紹

2. Selenium 安裝

pip install selenium

3. Webdriver 下載

  1. Chrome
  2. Edge
  3. Firefox
  4. Safari

以下針對大家較常使用的Chromedriver做介紹~

4. Chromedriver 使用

# 載入需要的套件from selenium import webdriver# 開啟瀏覽器視窗(Chrome)# 方法一:執行前需開啟chromedriver.exe且與執行檔在同一個工作目錄driver = webdriver.Chrome()# 方法二:或是直接指定exe檔案路徑driver = webdriver.Chrome(“桌面\chromedriver”)
driver = webdriver.Firefox()driver = webdriver.Safari()
driver.get("http://www.google.com") # 更改網址以前往不同網頁driver.close() # 關閉瀏覽器視窗

5. 使用Selenium輸入及點擊

圖一、找到需要的網頁元素
# 定位搜尋框element = driver.find_element_by_class_name(“gLFyf.gsfi”)# 傳入字串element.send_keys(“Selenium Python”)
圖二、send_keys之後的網頁
element.clear()

那填入關鍵字之後,要怎麼點擊搜尋按鈕呢?

button = driver.find_element_by_class_name(“gNO89b”)button.click()
圖三、使用Selenium點擊搜尋按鈕的結果

看!是不是很厲害呢!大家可以自行更改搜尋關鍵字,或是嘗試不同網頁練習看看喔!

6. send_keys模擬鍵盤輸入

from selenium.webdriver.common.keys import Keys
"""Set of special keys codes."""NULL = '\ue000'CANCEL = '\ue001' # ^breakHELP = '\ue002'BACKSPACE = '\ue003'BACK_SPACE = BACKSPACETAB = '\ue004'CLEAR = '\ue005'RETURN = '\ue006'ENTER = '\ue007'SHIFT = '\ue008'LEFT_SHIFT = SHIFTCONTROL = ‘\ue009’LEFT_CONTROL = CONTROLALT = ‘\ue00a’LEFT_ALT = ALTPAUSE = ‘\ue00b’ESCAPE = ‘\ue00c’SPACE = ‘\ue00d’PAGE_UP = ‘\ue00e’PAGE_DOWN = ‘\ue00f’END = ‘\ue010’HOME = ‘\ue011’LEFT = ‘\ue012’ARROW_LEFT = LEFTUP = ‘\ue013’ARROW_UP = UPRIGHT = ‘\ue014’ARROW_RIGHT = RIGHTDOWN = ‘\ue015’ARROW_DOWN = DOWNINSERT = ‘\ue016’DELETE = ‘\ue017’SEMICOLON = ‘\ue018’EQUALS = ‘\ue019’NUMPAD0 = ‘\ue01a’ # number pad keysNUMPAD1 = ‘\ue01b’NUMPAD2 = ‘\ue01c’NUMPAD3 = ‘\ue01d’NUMPAD4 = ‘\ue01e’NUMPAD5 = ‘\ue01f’NUMPAD6 = ‘\ue020’NUMPAD7 = ‘\ue021’NUMPAD8 = ‘\ue022’NUMPAD9 = ‘\ue023’MULTIPLY = ‘\ue024’ADD = ‘\ue025’SEPARATOR = ‘\ue026’SUBTRACT = ‘\ue027’DECIMAL = ‘\ue028’DIVIDE = ‘\ue029’F1 = ‘\ue031’ # function keysF2 = ‘\ue032’F3 = ‘\ue033’F4 = ‘\ue034’F5 = ‘\ue035’F6 = ‘\ue036’F7 = ‘\ue037’F8 = ‘\ue038’F9 = ‘\ue039’F10 = ‘\ue03a’F11 = ‘\ue03b’F12 = ‘\ue03c’META = ‘\ue03d’COMMAND = ‘\ue03d’
element.send_keys(Keys.CONTROL, "c")element.send_keys(Keys.CONTROL, "v")

7. 瀏覽紀錄

driver.forward()
driver.back()
歡迎加入我們的Telegram獲取即時訊息!https://t.me/marketingdatascience
歡迎加入我們的Line@獲取即時訊息!https://line.me/R/ti/p/%40cde8265r

您可能有興趣:

📢TMR為您量身打造「全方位數據課程」

【TMR】 X 【 好學校】
👨‍💼Python商業全系列數位課程👨‍💼

#行銷人必學實用Python課程

#實用投資分析課程

#好學校企業百大課程之一:

【TMR】 X 【工研院】
🏭工業4.0大數據智慧應用課程🏭

2020課程地圖

🏆 國內第一本行銷資料科學專書

🏆 國內第一本行銷資料科學 ” 實作 ” 專書

🏆國內第一本「股票小祕書」專書

  1. 天瓏書局:http://bit.ly/stock-secretaryBot
  2. 博客來:https://www.books.com.tw/products/0010833772

--

--

--

Marketing data science. 台灣第一個行銷資料科學(MDS)知識部落,本粉絲專頁在探討行銷資料科學之基礎概念、趨勢、新工具和實作,讓粉絲們瞭解資料科學的行銷運用,並開啟厚植數據分析能力之契機。粉絲專頁:https://www.facebook.com/MarketingDataScienceTMR

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
行銷資料科學

行銷資料科學

Marketing data science. 台灣第一個行銷資料科學(MDS)知識部落,本粉絲專頁在探討行銷資料科學之基礎概念、趨勢、新工具和實作,讓粉絲們瞭解資料科學的行銷運用,並開啟厚植數據分析能力之契機。粉絲專頁:https://www.facebook.com/MarketingDataScienceTMR

More from Medium

Here’s What No One Tells You About SQLITE3

Compiling video clips using python.

First of all…

PGP : how to encrypt your data ?