文章詳情頁
java - 爬蟲爬取圖片問題?
瀏覽:85日期:2023-10-31 08:12:21
問題描述
剛才修改了下 POM,大家可以重新下載源碼這是我寫的爬蟲的項目地址 項目不報錯,但是問題是下載圖片到本地后經常性的是圖片不完整,如下:
這是下載圖片的核心代碼,如下:
@Override public void run() {Response res = null;try { res = Jsoup.connect(src).ignoreContentType(true).timeout(30000).execute(); byte[] bytes = res.bodyAsBytes(); File file = new File(path + name); if (!file.exists()) {RandomAccessFile raf = new RandomAccessFile(file, 'rw');raf.write(bytes);raf.close(); }} catch (IOException e1) { e1.printStackTrace();} }
經過資料查詢,感覺是范圍請求 Range的問題或者自己沒發現的問題?希望大家給看下,謝謝
問題解答
回答1:感覺是響應數據沒獲取完整,你debug一下看看響應的實際數據大小和你保存的數據大小是否有出入。
又或者因為還有一部分數據還在緩沖區中,沒來得及寫到文件,此時進程退出,導致數據不完整,關閉文件流之前執行一下flush操作。
標簽:
java
相關文章:
1. mysql - ubuntu開啟3306端口失敗,有什么辦法可以解決?2. php傳對應的id值為什么傳不了啊有木有大神會的看我下方截圖3. extra沒有加載出來4. javascript - 微信網頁開發從菜單進入頁面后,按返回鍵沒有關閉瀏覽器而是刷新當前頁面,求解決?5. mysql - C#連接數據庫時一直這一句出問題int i = cmd.ExecuteNonQuery();6. mysql日期類型默認值’0000-00-00’ 報錯7. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?8. mysql replace 死鎖9. windows - asp.net連接上mysql之后如何調用?比如下面的登錄驗證功能怎么實現10. android - 安卓做前端,PHP做后臺服務器 有什么需要注意的?
排行榜
