SlideShare uma empresa Scribd logo
1PAG E
Yanwei Liu
Selenium與動態網頁爬蟲應用
2PAG E
專注於Python爬蟲、資料分析、機器學習、深度學習程式應用開發。
Yanwei Liu
Introduction
3PAG E
GitHub
https://github.com/e96031413
4PAG E
Medium
https://medium.com/@yanweiliu
5PAG E
Selenium爬蟲筆記
https://reurl.cc/D9xLaN
6PAG E
Q&
A
7PAG E
使用 Selenium 與 使用 Requests 套件進行網路爬蟲的差別是甚麼?
他們各有甚麼優缺點呢?
Q1
8PAG E
Selenium優點:
• 上手容易
• 跨平台的自動化測試工具(JAVA、C#、........)
• 比較不會有被網頁封鎖的問題(至少我個人經驗)
Selenium缺點:
• 執行速度較慢(使用Chrome)
• 需要driver驅動程式(chromedriver.exe)
• Chrome更新需要重新下載driver
A:
9PAG E
Requests優點:
• 執行速度比Selenium「快很多」
• 有時要搭配header和proxy,解決被網頁封鎖的問題
• 可搭配LINE Notify,將爬蟲資料傳到自己的LINE群組
Requests缺點:
• 要搭配BeautifulSoup解析網頁(需要會基礎的HTML / CSS)
• 有時要搭配不同的header和proxy,解決被網頁封鎖的問題
A:
10PAG E
若想使用 Selenium 進行動態網頁爬取,
是否需要先熟悉 html 與 Javascript ?
Q2
11PAG E
若想使用 Selenium 進行動態網頁爬取,
是否需要先熟悉 html 與 Javascript ?
A:
12PAG E
Selenium
動態網頁爬蟲神器
13PAG E
我曾用Selenium 爬過什麼?
• 氣象局網站
• 政府部門資料網站
• 104人力銀行職缺查詢
• 網頁全畫面自動截圖
• 電影推薦網站
14PAG E
本日Demo程式碼
https://reurl.cc/9EWqEX
15PAG E
Selenium
1. 安裝
pip install selenium
到 https://reurl.cc/X62NOD 下載驅動程式
16PAG E
Selenium
2. 引入套件並初始化
from selenium import webdriver
from selenium.webdriver.common.keys import Keys #進行鍵盤輸入
driver_path = “X:/XXX/pathToYourDriver/chromedriver.exe”
driver = webdriver.Chrome(driver_path)
17PAG E
Selenium
3. 開網頁
driver.get("https://www.google.com/")
18PAG E
Selenium
4. 用 XPAth找element
keywords = "Python爬蟲“
search_bar = driver.find_element_by_xpath("/html/body/div[1]/div[3]/form/div[2]/div[1]/div[1]/div/div[2]/input")
search_button = driver.find_element_by_xpath("/html/body/div/div[3]/form/div[2]/div[1]/div[2]/div[2]/div[2]/center/input[1]")
解決爬蟲新手不了解
HTML / CSS 及 JS問題
19PAG E
Selenium
5. 進行鍵盤操作
search_bar.send_keys(keywords) # 輸入搜尋關鍵字
search_bar.send_keys(Keys.ENTER) # 按下Enter鍵
20PAG E
Selenium
6. 單頁爬蟲
21PAG E
Selenium
7. 指定頁數爬蟲
22PAG E
Selenium
8. 開始爬蟲
main()
driver.close()
23PAG E
Q&
A
24PAG E
專注於Python爬蟲、資料分析、機器學習、深度學習程式應用開發。
Yanwei Liu
Thanks For Your Watching
25PAG E
GitHub
https://github.com/e96031413
26PAG E
Medium
https://medium.com/@yanweiliu

Mais conteúdo relacionado

Semelhante a Selenium與動態網頁爬蟲應用

Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)
liqiang xu
 
Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)
bwgang
 
J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)
Allan Huang
 
广告技术部自动化测试介绍.pdf
广告技术部自动化测试介绍.pdf广告技术部自动化测试介绍.pdf
广告技术部自动化测试介绍.pdf
bj_qa
 
豆瓣I os自动化测试实践和经验
豆瓣I os自动化测试实践和经验豆瓣I os自动化测试实践和经验
豆瓣I os自动化测试实践和经验
drewz lin
 

Semelhante a Selenium與動態網頁爬蟲應用 (20)

Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)
 
Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)Selenium私房菜(新手入门教程)
Selenium私房菜(新手入门教程)
 
Proud Plone on Cloud
Proud Plone on CloudProud Plone on Cloud
Proud Plone on Cloud
 
使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)使用 Pytest 進行單元測試 (PyCon TW 2021)
使用 Pytest 進行單元測試 (PyCon TW 2021)
 
Tip for Editors
Tip for EditorsTip for Editors
Tip for Editors
 
Python系列1
Python系列1Python系列1
Python系列1
 
Why to choose laravel framework
Why to choose laravel frameworkWhy to choose laravel framework
Why to choose laravel framework
 
測試是什麼
測試是什麼測試是什麼
測試是什麼
 
J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)
 
How to choose web framework
How to choose web frameworkHow to choose web framework
How to choose web framework
 
第1章 软件测试概述
第1章 软件测试概述第1章 软件测试概述
第1章 软件测试概述
 
软件测试 -第1章 概述
软件测试 -第1章 概述软件测试 -第1章 概述
软件测试 -第1章 概述
 
广告技术部自动化测试介绍.pdf
广告技术部自动化测试介绍.pdf广告技术部自动化测试介绍.pdf
广告技术部自动化测试介绍.pdf
 
從理想、到現實的距離,開啟品味軟體測試之路 - 台灣軟體工程協會 (20220813)
從理想、到現實的距離,開啟品味軟體測試之路 - 台灣軟體工程協會 (20220813)從理想、到現實的距離,開啟品味軟體測試之路 - 台灣軟體工程協會 (20220813)
從理想、到現實的距離,開啟品味軟體測試之路 - 台灣軟體工程協會 (20220813)
 
Agile Taichung sharing Robot Framework 2018/05/19
Agile Taichung sharing Robot Framework 2018/05/19Agile Taichung sharing Robot Framework 2018/05/19
Agile Taichung sharing Robot Framework 2018/05/19
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
 
豆瓣I os自动化测试实践和经验
豆瓣I os自动化测试实践和经验豆瓣I os自动化测试实践和经验
豆瓣I os自动化测试实践和经验
 
Tcon分享 芈峮
Tcon分享 芈峮Tcon分享 芈峮
Tcon分享 芈峮
 
網頁安全 Web security 入門 @ Study-Area
網頁安全 Web security 入門 @ Study-Area網頁安全 Web security 入門 @ Study-Area
網頁安全 Web security 入門 @ Study-Area
 
I Sample 20070904
I Sample 20070904I Sample 20070904
I Sample 20070904
 

Selenium與動態網頁爬蟲應用

Notas do Editor

  1. 對於新手來說,我覺得若要進行爬蟲,還花很多時間在熟悉HTML及JS,會浪費太多時間 我今天要教大教即使沒有任何基礎,也能透過Selenium輕鬆體驗爬蟲