iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
Software Development

我命由我不由語言 java爬蟲挑戰 系列

在這個鐵人賽中,我將利用Java技術開發一個完整的爬蟲系統,目標是自動化抓取台灣最大的租屋平台——591租屋網的房屋信息。透過這個實戰專案,我將深入探討Java在爬蟲開發中的應用,並與Python進行比較分析,討論Java在這個領域的優劣勢。除了基本的數據抓取功能,我還會整合Discord Bot,實現當符合條件的租屋信息出現時,能即時通知Discord群組成員。這將是一個全面展示Java技術應用與拓展能力的實踐挑戰。
希望能夠完成。

鐵人鍊成 | 共 30 篇文章 | 5 人訂閱 訂閱系列文 RSS系列文 團隊看不見未來
DAY 1

Java爬蟲挑戰 Day 1 - 前言 & Java爬蟲大綱

在友人的邀請下,有幸來參加看看鐵人賽。目標是用30天的時間使用Java開發一個租屋爬蟲系統,並且透過Discord進行推播,就看看能在30天完成多少了。 選題靈...

2024-08-18 ‧ 由 小草 分享
DAY 2

java爬蟲挑戰 Day 2 - 網路爬蟲基本概念

什麼是網路爬蟲? 網路爬蟲(Web Crawler),是一種自動化的腳本或程式,用於瀏覽網際網路並提取特定的數據。 講白了,就是讓爬蟲程式定期幫你Google,...

2024-08-19 ‧ 由 小草 分享
DAY 3

Java爬蟲挑戰Day 3 - HTTP請求與網頁解析

上一篇提到,網頁爬蟲就是讓爬蟲程式定期幫你Google。 為了更好地理解爬蟲的運作原理,這一篇我們要簡單說明一下網頁背後的工作原理。 HTTP請求 在使用瀏覽器...

2024-08-20 ‧ 由 小草 分享
DAY 4

java爬蟲挑戰 Day 4 - 591租屋爬蟲 需求分析&系統設計

有了基礎知識後,接下來就要進行程式開發前的準備 需求分析 (Requirements Analysis) 需求對象: 自己 系統需求: 通知功能: 當...

2024-08-21 ‧ 由 小草 分享
DAY 5

Java爬蟲挑戰 Day 5 - Spring boot專案建立 & Jsoup爬取HTML資料

今天我們開始實際開發,重點是建立Spring boot專案。 GitHub連結 以後程式碼的改動都會使用此githttps://github.com/a9517...

2024-08-22 ‧ 由 小草 分享
DAY 6

java爬蟲挑戰 Day 6 - Java導入SSL証書

上一篇我們的錯誤 javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.sec...

2024-08-23 ‧ 由 小草 分享
DAY 7

java爬蟲挑戰 Day 7 - 使用selenium處理動態網頁

昨天成功使用Jsoup拿到Html的內容。其實只會印出靜態網頁的結果,如之前檢視原始碼的結果: 沒辦法拿到我們想要的目標,如這些: 動態網頁的處理-Seleni...

2024-08-24 ‧ 由 小草 分享
DAY 8

java爬蟲挑戰 Day 8 - 使用Jsoup解析物件 (1)

Jsoup可以將字串轉成HTML的DOM物件,方便我們取得資料。 Document doc = Jsoup.parse(pageSource); 之後提取必要...

2024-08-25 ‧ 由 小草 分享
DAY 9

java爬蟲挑戰 Day 9 - 使用Jsoup解析物件 (2)

今天目標是點擊租物列表的物件,進入頁面取得詳細資料。 將很多變數、函數都進行了重新命名,程式碼也改了很多,希望不會影響閱讀。 RentalCrawlerServ...

2024-08-26 ‧ 由 小草 分享
DAY 10

java爬蟲挑戰 Day 10 - H2 資料庫 & JPA 引入

由於我們的專案規模很小,所以資料庫直接使用H2資料庫。連接資料庫的方式我習慣用JPA。 什麼是 H2 資料庫? H2 是一個輕量級的 Java 嵌入式資料庫,支...

2024-08-27 ‧ 由 小草 分享