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