不多比比,直接出源码,运行不了自己反思

网址看自己的需求,可以自己更换

/**
*   爬取某网王者荣耀英雄图片
*/
public class WebSpiderpublic static void main(String[] args) throws Exception {spiderFirst();spider(2);}/***  针对第一页地址和其他页地址不一致的情况*  爬取第一页资源*/public static void spiderFirst() throws Exception {// 创建一个链接,对网页进行请求CloseableHttpClient httpClient = HttpClients.createDefault();// 请求地址 进行请求HttpGet httpGet = new HttpGet("http://www.netbian.com/s/wangzherongyao/index.htm");// 响应请求的地址CloseableHttpResponse httpResponse = httpClient.execute(httpGet);// 获取响应实体HttpEntity entity = httpResponse.getEntity();String content = EntityUtils.toString(entity);// Jsoup html解析器// 解析html文本内容Document document = Jsoup.parse(content);Elements elements = document.select("div.list ul li a img");//System.out.println(elements);for (int i = 0; i < elements.size(); i++) {Element element = elements.get(i);String src = element.attr("src");//System.out.println(src);CloseableHttpResponse httpResponse2 = httpClient.execute(new HttpGet(src));HttpEntity entity2 = httpResponse2.getEntity();InputStream inputStream = entity2.getContent();FileUtils.copyToFile(inputStream, new File("E://images/王者荣耀图片/"+"1-"+ i+ ".jpg"));System.out.println("文件"+"1-"+i+".jpg 抓取成功");inputStream.close();}System.out.println("数据抓取完毕");}/** 爬取其他页* pageIndex >= 2* 带翻页爬取的功能*/public static void spider(int pageIndex) throws Exception {// 创建一个链接,对网页进行请求CloseableHttpClient httpClient = HttpClients.createDefault();// 请求地址 进行请求HttpGet httpGet = new HttpGet("http://www.netbian.com/s/wangzherongyao/index_"+pageIndex+".htm");// 响应请求的地址CloseableHttpResponse httpResponse = httpClient.execute(httpGet);// 获取响应实体HttpEntity entity = httpResponse.getEntity();String content = EntityUtils.toString(entity);// Jsoup html解析器// 解析html文本内容Document document = Jsoup.parse(content);Elements elements = document.select("div.list ul li a img");//System.out.println(elements);for (int i = 0; i < elements.size(); i++) {Element element = elements.get(i);String src = element.attr("src");//System.out.println(src);CloseableHttpResponse httpResponse2 = httpClient.execute(new HttpGet(src));HttpEntity entity2 = httpResponse2.getEntity();InputStream inputStream = entity2.getContent();FileUtils.copyToFile(inputStream, new File("E://images/王者荣耀图片/" +pageIndex+"-"+ i+ ".jpg"));System.out.println("文件"+pageIndex+"-"+i+".jpg 抓取成功");inputStream.close();}pageIndex++;spider(pageIndex);}
}

来,看结果!爬取的王者荣耀图片都删了,贴上之前爬取的另一个网站的图片,哈哈哈!

程序需要的 jar 包

Java:爬取网站图片相关推荐

  1. java 爬取图片_使用Java多线程爬取网站图片

    使用Java爬取网站的图片并保存至本地 使用maven导入依赖org.jsoup jsoup 1.11.2 实现代码:import org.jsoup.HttpStatusException; imp ...

  2. python 第一行 报错_初学Python-只需4步,爬取网站图片

    很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来.我:行,那我们卖什么呀?领导:看 ...

  3. C++编写爬虫脚本爬取网站图片

    C++编写爬虫脚本爬取网站图片 整体代码设计思路 具体功能实现 初始化网络库 url中爬取图片 获取网页源代码 连接主机 url中获取主机名和文件名 html中提取连接 html中提取图片链接 获取并 ...

  4. 爬取千库网ppt_初学Python-只需4步,爬取网站图片(附py文件)

    很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来. 我:行,那我们卖什么呀? 领导 ...

  5. 【用Java爬取网页图片——爬虫爬取数据】

    用Java爬取网页图片--爬虫爬取数据 1.在创建项目中导入jsoup 2.创建一个保存下载图片的路径 3.使用URL读取网页路径,jsoup读取网页内容 4.利用属性标签获取图片连接块 5.因为该路 ...

  6. Python网络爬虫——爬取网站图片小工具

    最近初学python爬虫,就写了一个爬取网站图片的小工具,界面如下: 用到的包主要是爬虫常用的urllib,urllib2和图形界面用的Tkinter,完整代码如下: # -*- coding:utf ...

  7. 四个步骤教你爬取网站图片,新手必学

    很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来. 我:行,那我们卖什么呀? 领导 ...

  8. java爬取网站电话号码(网络爬虫练习实例--I/O流)

    直接上代码了.这里只是爬取首页的,爬取别的页面只需要加个参数,循环一下就可以了! package mobile.phone.number; import java.io.BufferedReader; ...

  9. Java 爬取网页图片并下载

    Java 爬取网页图片并下载 源码; package a; import org.jsoup.Connection; import org.jsoup.Jsoup; import org.jsoup. ...

  10. Python爬取网站图片并保存,超级简单

    Python爬取网站图片并保存,超级简单 先看看结果吧,去bilibili上拿到的图片=-= 第一步,导入模块 import requests from bs4 import BeautifulSou ...

最新文章

  1. https://www.zhihu.com/question/41564604
  2. 排序算法中——归并排序和快速排序
  3. 第二章 向量(d5)有序向量:插值查找
  4. 一个苏州IT人的5年挨踢经历-------经历篇(之三)
  5. 10. Leetcode 209. 长度最小的子数组 (数组-同向双指针-滑动窗口)
  6. 【AI产品】超长文详解作业帮产品逻辑和技术原理
  7. vue.js+vscode+visual studio在windows下搭建开发环境
  8. 微软的判断一个数是不是质数的算法
  9. 如何将 MacBook 的外置屏幕设置为主屏幕
  10. SpringBoot整合Sharding-JDBC实现水平分表
  11. 三星note10 android q,【极光ROM】-【三星NOTE10/NOTE10+/5G N97XX-9825】-【V5.0 Android-Q-TE9】...
  12. oracle数据库的sql语句练习1
  13. PDF怎么转图片格式?分享三个不错的方法
  14. 导致ERP企业管理系统实施失败的四点原因
  15. body 没有被撑开_flex布局被子元素撑开如何保持内容不超出容器的方法
  16. VBA学习_4:运算符
  17. VueJS学习资料大全
  18. anaconda图形界面打开方式
  19. 再见了 SELECT *!大厂的 MySQL 查询优化方案,确实牛逼!
  20. Python项目通用的目录结构总结

热门文章

  1. 联发科天玑1200(MT6893)5G 移动芯片详细性能及规格参数
  2. LINUX块设备驱动6
  3. 深度|神经网络和深度学习简史(第一部分):从感知机到BP算法
  4. STM32F103 GU906B模块GPRS、短信收发、拨号等功能的实现
  5. 远离烈日 盘点中国10大避暑胜地
  6. Golang 中通过 cgo 调用 C++ 的动态库的功能封装
  7. 苹果公司正在开发一种专用的无损音频格式,使苹果 AirPods 可以播放这种无损音频
  8. GPLT 特立独行的幸福
  9. 【C++ linux】SIGPIPE信号在网络通信程序导致程序异常中断
  10. 常用的adb shell命令记录