2020年4月6日 星期一

為什麼應該要學Python網頁爬蟲?

會開始學習python網頁爬蟲其實是從生活中的需要開始,畢竟現在這個世界是0與1構成,許多資訊或數據在網路上唾手可得,引用時若需重新手動繕打,似乎太沒生產力。

自從我換回android之後,無法再像過去用iOS時啟動會自動翻頁的朗讀功能(android的輔助使用只能唸螢幕上的文字,且不可把螢幕關閉),我就得回到網頁版,手動複製文章再寄到Instapaper等其他具有朗讀功能的服務伺服器。

而我

最討厭的就是重複的工作,而且這個工作的模式固定,進文章列表、(依序)點文章、進文章、從上到下複製全文(如果有圖片或廣告還要分段)、打開Gmail、貼上、寄出,再重新來一遍,光想就累了。此外,自己爬的好處除了按個鈕就可以完成以上動作外,另一個好處是可以隨自己的閱聽習慣適時調整段落順序。如我習慣保留文章圖片,雖然我多是聽文章,但哪天我有興趣想看圖,也是點開螢幕就有,不需回到原始網頁。而網頁的圖片說明多是掛在照片下方,我自己的爬蟲反而是把figcaption標籤擺在fig前面,並且在說明最前面加上「照片」,讓我在聽的時候知道這段文字是照片說明。此外,多餘的資訊也可在爬蟲時濾除,例如我不需知道照片的攝影者資訊,所以可在輸出時刪掉,避免影響聆聽體驗。有些文章會將某些段落以引言標籤作成重點摘錄,這也會被我刪掉。

所以我開始學習用python,因為它易學且外掛套件很多,只要import就可以用,不用重新發明輪子。

用urllib或selenium(需帳密者)進入網頁,用beautiful soup的find_all 搭配for … in …迴圈或正則標示式來梳理文章,再用smtplib寄送文章到Instapaper專用電郵信箱。我還會把已爬過的網址輸出到一個純文字檔,確保下次爬列表時不會爬到重覆文章。

不過,在python這條路還有很多要學,我只是分享一下至目前的心得。



from WordPress https://ift.tt/34e7Dtr

沒有留言:

張貼留言