fbpx

使用 REQUESTS、LXML 和 SPLASH 的 Python3 網路爬蟲 101

Contents

使用 Requests、強大的 LXML 和用於 JavaScript 網站的Splash,用 Python 為絕對的初學者進行網頁爬蟲

從這 4.5 小時的課程,你會學到

  • LXML 核心基礎知識
  • XPath 和 CSS 選擇器
  • 如何用 Python 傳送 HTTP 請求
  • 爬取 HTML 網頁
  • 使用遞迴來抓取多個頁面
  • Scraping APIs
  • Splash HTTP API
  • 使用 Splash 爬取 JavaScript 網站
  • 使用 Requests 對網站進行認證和登入
  • 網頁抓取的最佳實踐
  • 建構資料集

要求

  • Python 的基本水平
  • 有網際網路連線的個人電腦

課程說明

什麼是網頁爬蟲?

假設你的老闆給了你一個任務,他希望你從一個網站上提取大約 1000 個產品,將資料結構化並儲存到資料庫中,你會手動複製貼上所有的產品細節,包括產品名稱、網址和價格?我可以想像你會工作幾天幾夜,但你不會完成這個任務,所以這就是網頁爬蟲的優勢。因此,網頁爬蟲,或網頁採集或網頁資料提取就像寫一個指令碼,可以在幾分鐘內自動從網站上提取資料!。

為什麼要學習網頁爬蟲?

無論你是一個數據分析師,一個網頁開發人員,甚至是一個想做自由職業者的人,你都應該學習網路爬蟲。

對於一個資料分析師來說,建立一個資料集是非常重要的,所以如果沒有網頁爬蟲,你根本無法生成它,此外,在你的履歷中加入網頁爬蟲的內容對你來說是一個加分項。

網頁爬蟲可以用於各種領域,所以讓我給你一些例子,說明你可以用它做什麼:

  1. 產生線索
  2. Drop shipping,基本上你要不斷地從不同的網上商店蒐羅產品,並在你的網站上展示它們,以賺取利潤
  3. 監測產品價格以獲得最佳交易
  4. 自動化
  5. 機器學習
  6. 網頁爬蟲自由工作者

當然,有成噸成噸的各種領域,網頁爬蟲可以是非常有益的。

這個課程適合你嗎?

我精心策劃和設計了這個課程,使其對初學者友好,根據我的經驗,我知道那些做網頁爬蟲的人大多數是資料分析員,他們對網路如何工作、如何提出請求、如何定位和解析網路上的資料等沒有背景知識,此外,這是關於所包括的材料和使用的工具的最新課程,所以在這個課程中

  1. 我將向你介紹最常用的網頁爬蟲工具/框架
  2. 我們將從頭開始設定開發環境
  3. 你將學習並理解 LXML 的核心基礎知識
  4. 如何使用 XPath 和 CSS 選擇器來選擇網頁上的資料
  5. Web 是如何工作的(請求/響應)。
  6. 如何爬取簡單的 HTML 網頁
  7. 如何爬取多個網頁
  8. 從 API 中提取資料
  9. 你將學習Splash(速成班),以便你能用它來爬取 JavaScript 網站
  10. 認證/登入
  11. 將提取的資料儲存在 JSON/CSV 檔案或 MongoDB/SQLite3 中
  12. 關於網頁爬蟲的獨家技巧和竅門

最後,這門課程是基於專案的,從第二節開始,我們將在一個不同的網站上進行實驗,每個專案都有一定的難度,每個專案都完全獨立於其他專案。

本課程中是否有任何作業/練習?

是的,每一節都有一個作業,這將有助於弄髒你的手,在做完每一節的作業後,你將對網頁爬蟲感到更有信心和舒適。

為什麼是 LXML 而不是 BeautifulSoup?

LXML 是一個輕量級的 HTML 解析器,即使是最流行的網頁抓取框架(Scrapy)也是建立在LXML之上的,BeautifulSoup 在開放給我們的功能數量上有點過剩,它有更多的功能可以使用,是的,沒錯 然而,在Web Scraping中,大多數時候我們使用 XPath 和 CSS 選擇器來瀏覽和選擇要從HTML網頁(樹)中爬取的內容,所以沒有必要學習新的功能,也沒有必要浪費那麼多時間來熟悉 BeautifulSoup 的 API 和內部架構,此外,LXML在效能方面也比BeautifulSoup好得多。

誰是你的導師?

你好!我是艾哈邁德,很高興見到你,我的學生更喜歡叫我網頁爬蟲忍者,目前我已經在世界各地教了超過2000名學生如何做網頁爬蟲。我個人每天都在做網頁爬蟲,無論是為了娛樂、個人專案還是作為自由職業者,你猜怎麼著?我甚至有一個電腦科學的碩士學位。

我應該報名參加這個課程嗎?

老實說,報名參加這個課程,你不會有任何損失,因為如果這個課程不符合你的要求,你可以在報名參加課程之日起30天內要求退款,由Udemy保證,沒有任何問題

所以,如果你對網頁爬蟲一無所知,並且不知道從哪裡開始,現在就報名吧! 🙂 🙂

目標受眾

  • 任何想學習使用 Python、Requests 和 LXML 進行網頁爬蟲的人
  • 任何想學習如何使用 Splash 來爬取 JavaScript 網站的人
  • 完全沒有網頁爬蟲背景的初學者
  • 已經對網頁爬蟲有了基本的熟悉,並想填補空白的人

講師簡介

Ahmed Rafik 開發人員和線上教師

我是誰?

我是Ahmed Rafik,我是一個自學成才的開發者,也是Udemy的線上教師。我已經幫助成千上萬的人學習使用不同的工具(如Scrapy、Splash和Selenium)進行網頁爬蟲。

作為一個自學成才的開發者,我發現自己在不同的教程和(電子)書籍之間跳來跳去,試圖瞭解事情是如何解決的,我簡直是在浪費大量的時間來連線這些點,而不是學習如何編碼,隨著時間的推移,這已經變得如此不堪重負,有很多東西需要學習和連線。

我相信編碼對每個人來說都應該是很容易的,但這也需要你選擇有正確知識的老師。

在我的課程中,我會從一開始就教你開始你的網頁爬蟲生涯所需的技能,沒有任何花哨的東西。除非有必要,否則我儘可能避免枯燥的理論解釋,我總是保持我的課程是最新的,這也是幫助我在Udemy擁有最高評分和最暢銷的網頁爬蟲課程的原因。

我迫不及待地想看到你報名參加我的課程,我一定會在你的每一個步驟中陪伴你,並回答你的任何問題。

英文字幕:有

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

報名參加課程

Sponsored by Udemy


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

Comments are closed.

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: