[問題] java 多執行緒爬蟲
之前需要爬一些網站的評論而想了一個簡單的多執行緒爬蟲
但是覺得方法不漂亮,想問問其他更好的想法
需求: (由於效率問題,需要 multithreading)
將許多網站連結(存在一個 List 裡面)裡面的評論全部爬下來
每個網站存成一個檔案,例如:txt
評論中會有連結連到其他文章,連文章一併爬下來
但是需要存到這個網站的檔案
ex: A 網站爬下來的資料存成 A.txt
裡面有評論連到 B 文章,需將 B 文章存進 A.txt 的相對位置
(就是那個評論那裏)
我之前的想法:
將 List 裡面的網站做 Multithreading
用一個暫時的 List 存爬下來的資料
碰到連結在 List 裡面做記錄,並把連結存到另一個 List
爬完這個網站之後將存連結的 List 做 multithreading
爬回來的文章寫回存資料的暫時 List
全部連結爬完之後將這個暫時 List 寫到 txt
問題:
1. 假如正在爬的幾個網站評論很多,記憶體用量可觀,而且 Threads 數量會很多
較難估計 CPU 使用
2. 每個網站產生完 threads 用過即丟,感覺很浪費,想重複利用
對於上面問題想請教更好的做法
感謝各位大大
--
這是個最好的時代,也是個最壞的時代,是最光明的時代,也是最黑暗的時代
藏龍臥虎今懦夫,鏡裡罪容化成無
人情冷暖難回首,嘆留多少傷心事
一沙一世界,一花一天堂,掌中盈無限,剎那即永恆。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 47.149.227.123
※ 文章網址: https://www.ptt.cc/bbs/java/M.1522399948.A.3EA.html
→
03/31 11:55,
6年前
, 1F
03/31 11:55, 1F
推
03/31 12:29,
6年前
, 2F
03/31 12:29, 2F
→
03/31 12:30,
6年前
, 3F
03/31 12:30, 3F
→
03/31 12:31,
6年前
, 4F
03/31 12:31, 4F
→
03/31 12:31,
6年前
, 5F
03/31 12:31, 5F
推
04/01 12:30,
6年前
, 6F
04/01 12:30, 6F
只有找到 BlockingQueue
※ 編輯: obelisk0114 (47.149.227.123), 04/01/2018 14:39:34
推
04/02 10:26,
6年前
, 7F
04/02 10:26, 7F
→
04/02 10:26,
6年前
, 8F
04/02 10:26, 8F
→
04/02 10:36,
6年前
, 9F
04/02 10:36, 9F
→
04/02 10:36,
6年前
, 10F
04/02 10:36, 10F
→
04/02 10:53,
6年前
, 11F
04/02 10:53, 11F
→
04/02 10:53,
6年前
, 12F
04/02 10:53, 12F
java 近期熱門文章
PTT數位生活區 即時熱門文章