文章详情页
java - 爬虫爬取图片问题?
浏览:178日期: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. vim中编辑HTML文件时换行不能缩进2. git - 在web应用分布式部署的情况下怎么进行配置更新3. javascript - Ajax返回json格式之后的数据解析后取出来的数据为undefined?4. 前端 - WebStrom安装了angularjs插件,但是没有语法提示5. 网页爬虫 - 关于Python的编码与解码问题6. css - 文字排版问题,内容都是动态抓出来的,字数不一定。如何对齐啊7. css3 - 微信前端页面遇到的transition过渡动画的bug8. redis - 究竟是选择微信小程序自带的统计工具还是自己开发一个数据统计的代码?9. 微信开放平台 - ios APP能不能打开微信然后通过微信跳转到指定的URL?10. python3.x - 我把3.6的卸载了,也重启了,但是在cmd用python -V指令查看版本时,还是提示下图的python3.6
排行榜

网公网安备