<font color = lightgreen>
# 行前準備</font>
請準備一個你感興趣的網站或者資料庫。以新聞網為優先,可以不用登入的最好。
準備好了之後,再繼續往下看喔!
---
# 爬蟲在做什麼
* 爬蟲,其實就是Google上網找資料。
* 一次找一筆很方便,但如果一次找一千筆,就不可能一篇一篇點。
* 所以這時候就需要爬蟲了。
---
<!-- .slide: data-background="https://i.imgur.com/ZocWRQ4.jpg" data-background-size="cover" -->
<font color = green>
# 怎麼寫CODE</font>
---
## 第一步 確認你的邏輯
* 進入爬蟲之前,請先想清楚你到底**要找甚麼資料**?
---
### 拿出你的紙跟筆
請用畫/寫的,簡單整理你的邏輯。

---
## <font color =lightgreen>李樹的心得
沒有邏輯
code寫再多都是騙人的…
</font>
---
## 第二步 確認你想要的結果
* 先想好要找什麼再下手,不要把時間花在發呆。
|data|title|author|content|link|
|---|---|---|---|---|
|我要日期|我要標題|我要作者|我要內容|我要網址|
---
## 第三步 觀察:網址還有網頁
* 點開你想要蒐集的網頁資料
* 開始觀察**網址**的變化<br>以及網頁。
---
### 觀察網址變化的工具:
[千變萬化一覽無遺](http://www.convertstring.com/zh_TW/EncodeDecode/UrlDecode)
---
### 找到網頁物件的工具:
[千藏萬躲一鍵抓取](https://selectorgadget.com/)
---
## 第四步 整理好了齁?那要開始囉!
爬蟲口訣<br>選、找、抓、存
---
### 選<br>你想蒐集的網站
確認你要找的網站是什麼。
要蒐集哪些頁面的資料?
---
### 找<br>網址變化的邏輯
看清楚,網址變化的規律是什麼?
---
### 抓<br>你要的資料內容
找到你要的資料(像是標題、作者)
找出它在整個網頁的位置是在哪裡
---
### 存<br>資料要存成甚麼
想清楚,你預計結果會長成怎樣?
先設定好,才不用重寫。
---
# 怎麼RUN
---
<iframe src = 'https://hackmd.io/ENXw5FT1QsOSC3R6sk7wqw?view' height = 500 width = 100%></iframe>
---
# 要得到什麼樣的成果?
---
## 你會想要哪些欄位的資料?
爬蟲,不是看到就一直寫
要先想清楚成果會長成怎樣
---
## 怎麼把資料變成這樣?
前面的示範用code省略很多步驟
要怎麼把你的網站資料抓下來
還需要其他指令輔助
記得 多多善用 google
---
# DEBUG!!!
---
## 臭蟲藏在細節裡
* 指令輸入錯誤
* 少打一個括弧
* 不知道語法是什麼
---
## 你的邏輯呢?
* 其實我也不知道自己在幹嘛…
* <font color = red>那你是在寫好玩的?</font>
* 怎麼抓不到網站?
* <font color = red>因為邏輯不對阿\^\_\^</font>
* 怎麼跑一跑就跑不動了?
* <font color = red>因為出錯了\^\_\^</font>
* 為甚麼資料被覆蓋!
* <font color = red>因為你沒跟電腦說啊!</font>
---
## 亂碼8/7
如果抓下來的資料是一團亂碼
請檢察有沒有輸入中文套件
且用UTF-8或者Big5存下來。
---
# 結語
---
|<h1>**爬蟲**</h1>|
|:-|
|<h3>**是一種並施熱情和判斷力<br>去出勁而緩慢地穿透硬木板的工作。**</h3>
---
# <font color = gray>沒有人會看的</font><br>參考資料
---
* [GTW](https://blog.gtwang.org/)
* [PTT 實用字串處理](https://www.ptt.cc/bbs/R_Language/M.1364646786.A.452.html)
* [R 指令手冊](http://www3.nccu.edu.tw/~99354011/R%20commands%2811.09.13%29.pdf)
* [爬蟲教學](https://hackmd.io/p/BJVhy8YyE#/)
{"metaMigratedAt":"2023-06-14T19:20:51.488Z","metaMigratedFrom":"YAML","title":"爬蟲教案","breaks":true,"contributors":"[{\"id\":\"d495dd6a-d376-40e6-8a32-e87bf711c04d\",\"add\":2709,\"del\":558}]"}