看板 Python 關於我們 聯絡資訊
※ 引述《WENroger (666)》之銘言: : 標題: [問題] 爬蟲自動更新程式 : 時間: Wed Sep 19 16:36:26 2018 : : 手機排版請見諒!!!! : 是這樣的如題 : : 小弟最近想寫一個爬蟲自動更新程式 : 程式有以下目的 : : 例如: : 我今天爬觀光局網站 : 將全部景點資訊爬下 : 過了一個月後觀光局多了10個新的景點 : 我可以透過這個程式讓爬蟲自動執行 : 並把這10個新的景點爬下來 : : 請問這個程式是我需要另外再寫一個 : 還是我可以在python做出一樣目的? : 另外就是我該從哪一方面的資訊去起手? : : 謝謝 : : -- : → WENroger: 不知道怎麼讓爬蟲做到自動更新,像是網路上提到scrapy可 09/19 22:37 : → WENroger: 不可以做到這個目的?另外就是先前資料都是匯入excel做 09/19 22:37 : → WENroger: 整理再匯入資料庫,這樣子的步驟會不會影響爬蟲的自動 09/19 22:37 : → WENroger: 更新? 09/19 22:37 你需要的是先學會找資料的方式,以工程師的思維來說是要將問題拆解 ,一步步地去解決各個部分。我不知道你的搜尋方式會是什麼,可是這 對於寫程式來說,思維方式影響十分大,你都知道自己的問題是要自動 更新,然後還想知道 scrapy 這個框架能不能完成,不是應該查找的關 鍵字可以使用 "scrapy timer" "scrapy schedule" "scrapy routine" 光這些下去就找到一堆了,如果你說英文看不懂,很抱歉我在這樣的關 鍵字至少就找到了像下面這樣的中文討論區: https://segmentfault.com/q/1010000008578604 https://blog.csdn.net/vivian_ll/article/details/65442105 甚至撇除你對 Python 或 scrapy 不熟,只是一個可以單次去爬的執行 檔,不論是 Windows/Unix/Linux 也可以做執行檔排程工作吧? 另外你提到的匯入 excel做整理再匯入資料庫,解決辦法也很多。你完 全可以捨棄這種方式,直接將爬取完的結果以適當的資料結構儲存,利 用 pandas 處理完之後,直接存取入資料庫。又或是使用 Python 直接 對 excel檔案進行存取,把匯入 excel做整理這件事情全都自動化,也 是可行的方式。 至於怎麼處理?怎麼匯入資料庫?善用你的搜尋引擎好嗎? -- 題外話,其實我不太懂你要用 Python 做這件事情的原因,因為照你的 說法,我去看了一下觀光局網站,你直接用 Excel 寫 vba 都能完成需 求,而且照你的問法你對 Python 也不熟的樣子… 爬蟲不是只有 Python 可以寫,當然他提供的框架讓你爬起來很方便, 開發起來速度也快。但你看起來似乎也不是很熟悉,我建議你先把問題 拆解,一個個功能慢慢再去添加: 1. 把網頁爬下來,並整理成具有規則規範的格式 在這個過程你就會遇到是不是要添加 header 檔案, 爬下的結果要怎麼適當地進行字串處理,可能要用到 xpath 去進行定位或是 Regular Expression 做字串 處理。 2. 將爬下來的結果輸出儲存 如果要儲存成 .xlsx檔要怎麼處理?是不是真的有需 要存成這種格式?還是單純的 .csv 也可以完成目標 ?如果要匯入資料庫,是不是 python 可以實現? 3. 定期爬取 新資料跟舊資料的衝突處理?時間間隔?網站是否有 防止爬取的機制?我的 buffer time 是不是要調整 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 148.177.185.133 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1537412036.A.1D0.html
gmccntzx1: @WENroger 看到這篇應該可以更了解為什麼把問題敘述 09/20 14:21
gmccntzx1: 清楚才能更快尋求到幫助了吧? 09/20 14:21
a9301040: 推 09/20 19:46
WENroger: 感謝H大的補充! 09/21 11:20
smartree: 感謝思考的分享 09/22 02:52