文章詳情頁
java - 爬蟲爬取圖片問題?
瀏覽:175日期: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. javascript - sublime快鍵鍵問題2. javascript - 移動端上不能實現拖拽布局嗎?3. 實現bing搜索工具urlAPI提交4. javascript - 如何判斷不同兩個對象觸發同一事件?5. ubuntu - apache安裝好后php文件放在哪里?6. javascript - react native在run-android時出現這個錯誤該怎么解決?大神賜教7. angular.js - 單頁應用(ng/vue)該如何監聽用戶離開當前頁面(或者路由)?8. c++ - QWebEngineView加載url后直接點擊鏈接沒有反應要怎么解決?9. 前端 - 這段代碼一直生效不了,查半天因為 top: 0px; 分號后一個隱藏的東西,也不是占位符...刪了就可以生效,這是什么情況。。10. thinkPHP5中獲取數據庫數據后默認選中下拉框的值,傳遞到后臺消失不見。有圖有代碼,希望有人幫忙
排行榜

網公網安備