[問題] HttpURLConnection使用上限?

看板java作者 (淨芯藍)時間17年前 (2008/07/15 21:50), 編輯推噓10(1009)
留言19則, 5人參與, 最新討論串1/1
不好意思 想請問一下 目前在用excel記錄網頁上的資料 但是在做io的時候發生了這個例外情況 發生了java.io.IOException: Server returned HTTP response code: 999 for URL: (我給的網址)例外 HttpURLConnection connection = (HttpURLConnection) url.openConnection(); //讀取連結 BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream())); //line = in.readLine(); while((line = in.readLine())!=null){ //處理我要的資料 } in.close(); 讀取連結的部份是爬板上的文得到的 在想是不是存連結資訊的陣列(或什麼東西) 被我塞滿了 才產生這個問題 那是不是那邊要釋放掉記憶體我沒有做到 因為這段程式會被主程式一直呼叫 去截取網頁上的資訊 或者是說因為過度的連結 是被網站那邊封鎖了? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.143.149.194

07/15 21:53, , 1F
Error 999 通常是你太用力去操 web server
07/15 21:53, 1F

07/15 22:02, , 2F
請問那有辦法解決嗎??因為要更新的資料頗多 目前也在測
07/15 22:02, 2F

07/15 22:04, , 3F
所以會更大量的呼叫 剛剛重開機完可以在呼叫 但很快又滿了
07/15 22:04, 3F

07/15 22:07, , 4F
web server被裝滿了有沒有什麼方法能清掉或其他方式能再使用
07/15 22:07, 4F

07/15 22:19, , 5F
那是他"response"給你的
07/15 22:19, 5F

07/15 22:20, , 6F
不是裝滿,你是短時間內扯太多了.
07/15 22:20, 6F

07/15 22:22, , 7F
在每次下載完一頁後 sleep 個一秒兩秒就該比較好
07/15 22:22, 7F

07/15 22:25, , 8F
可以告知什麼網站?操過中時 聯合 USPTO 無名 都沒出現過XD
07/15 22:25, 8F

07/15 22:33, , 9F
Yahoo 好像會有這種情況,不過真的要蠻巨量的
07/15 22:33, 9F

07/15 22:43, , 10F
是YAHOO的網站 因為所需的資料一個網頁只有一部份
07/15 22:43, 10F

07/15 22:46, , 11F
所以拉會很快 一個網頁一個網頁過去 剛剛突然想到 抓到需
07/15 22:46, 11F

07/15 22:47, , 12F
要的部份則結束這個網頁的搜尋 這樣會好一點嗎??
07/15 22:47, 12F

07/15 23:09, , 13F
不會 乖乖的用SLEEP吧
07/15 23:09, 13F

07/16 23:31, , 14F
Yahoo的新聞要用Socket才不會被鎖
07/16 23:31, 14F

07/17 20:49, , 15F
yahoo 有很多方法可以繞過
07/17 20:49, 15F

07/17 23:28, , 16F
可以請問樓上要用什麼方式嗎??這兩天試了sleep還是被鎖
07/17 23:28, 16F

07/17 23:31, , 17F
剛剛讓他sleep10秒還是一樣>"< 還是說我寫錯方向了??
07/17 23:31, 17F

07/18 13:12, , 18F
我自己抓YAHOO新聞的經驗,用HttpURLConnection必鎖
07/18 13:12, 18F

07/18 16:30, , 19F
上述經驗有誤,更正是抓YAHOO生活家~
07/18 16:30, 19F
文章代碼(AID): #18VAimcP (java)