[請益] 抓取網路上的資料存入DB

看板PHP作者 (瑋哥)時間14年前 (2012/01/15 16:40), 編輯推噓2(2011)
留言13則, 6人參與, 最新討論串1/1
最近再寫抓網路資料的程式 想請問一個問題 假設今天我要抓一批性質相同的資料 像是 300 個商品頁面,或 300 個個人名片頁面等等的 那我要每抓一個頁面 分析完我要的資料後就 insert 到 DB 中 還是要全部抓完後再一次存入 DB 中會比較好? 如果一直執行 insert 會讓速度變慢嗎? 另外,因為要訪問的頁面太多,所以我是用多個 <iframe src="getdata?abc=123></iframe> 的方式去摹擬同步的方式,那這樣如果我每個 iframe 裏面都有 connect insert 等等的動作的話,會不會讓 database 那邊錯亂阿QQ? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.228.249.225

01/15 16:46, , 1F
單純insert應該不會
01/15 16:46, 1F

01/15 16:47, , 2F
不過.....php適合寫這個嗎? = =a php沒執行緒...不方便說
01/15 16:47, 2F

01/15 20:56, , 3F
只要不要把DB開開關關應該都差不多
01/15 20:56, 3F

01/16 00:16, , 4F
沒必要, 執行同時會有其他工作讓db loading變重嗎?
01/16 00:16, 4F

01/16 00:35, , 5F
沒必要的意思是不用把資料一次性存入?
01/16 00:35, 5F

01/16 00:35, , 6F
沒有 都是抓資料->parse->insert 而已
01/16 00:35, 6F

01/16 01:01, , 7F
資料庫瞬間2000個insert都不是問題,重點是下載要分散
01/16 01:01, 7F

01/16 01:03, , 8F
分散給不同ip、proxy去抓網頁,寫同一台DB ok的啦~
01/16 01:03, 8F

01/16 12:44, , 9F
沒分散會怎樣嗎QQ
01/16 12:44, 9F

01/16 12:45, , 10F
一批大約一千個頁面訪問量 總共有一百批 XDDDD
01/16 12:45, 10F

01/16 13:28, , 11F
沒分散的話,最好每幾筆之間設個 sleep 避免被 ban ?
01/16 13:28, 11F

01/16 13:58, , 12F
也要看對方有沒有做DOS防禦啊, 很多都沒做的
01/16 13:58, 12F

01/16 13:59, , 13F
不過還是要做個sleep比較好
01/16 13:59, 13F
文章代碼(AID): #1F4f3mJx (PHP)
文章代碼(AID): #1F4f3mJx (PHP)