Java:爬取网站图片
不多比比,直接出源码,运行不了自己反思
网址看自己的需求,可以自己更换
/**
* 爬取某网王者荣耀英雄图片
*/
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:爬取网站图片相关推荐
- java 爬取图片_使用Java多线程爬取网站图片
使用Java爬取网站的图片并保存至本地 使用maven导入依赖org.jsoup jsoup 1.11.2 实现代码:import org.jsoup.HttpStatusException; imp ...
- python 第一行 报错_初学Python-只需4步,爬取网站图片
很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来.我:行,那我们卖什么呀?领导:看 ...
- C++编写爬虫脚本爬取网站图片
C++编写爬虫脚本爬取网站图片 整体代码设计思路 具体功能实现 初始化网络库 url中爬取图片 获取网页源代码 连接主机 url中获取主机名和文件名 html中提取连接 html中提取图片链接 获取并 ...
- 爬取千库网ppt_初学Python-只需4步,爬取网站图片(附py文件)
很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来. 我:行,那我们卖什么呀? 领导 ...
- 【用Java爬取网页图片——爬虫爬取数据】
用Java爬取网页图片--爬虫爬取数据 1.在创建项目中导入jsoup 2.创建一个保存下载图片的路径 3.使用URL读取网页路径,jsoup读取网页内容 4.利用属性标签获取图片连接块 5.因为该路 ...
- Python网络爬虫——爬取网站图片小工具
最近初学python爬虫,就写了一个爬取网站图片的小工具,界面如下: 用到的包主要是爬虫常用的urllib,urllib2和图形界面用的Tkinter,完整代码如下: # -*- coding:utf ...
- 四个步骤教你爬取网站图片,新手必学
很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来. 我:行,那我们卖什么呀? 领导 ...
- java爬取网站电话号码(网络爬虫练习实例--I/O流)
直接上代码了.这里只是爬取首页的,爬取别的页面只需要加个参数,循环一下就可以了! package mobile.phone.number; import java.io.BufferedReader; ...
- Java 爬取网页图片并下载
Java 爬取网页图片并下载 源码; package a; import org.jsoup.Connection; import org.jsoup.Jsoup; import org.jsoup. ...
- Python爬取网站图片并保存,超级简单
Python爬取网站图片并保存,超级简单 先看看结果吧,去bilibili上拿到的图片=-= 第一步,导入模块 import requests from bs4 import BeautifulSou ...
最新文章
- https://www.zhihu.com/question/41564604
- 排序算法中——归并排序和快速排序
- 第二章 向量(d5)有序向量:插值查找
- 一个苏州IT人的5年挨踢经历-------经历篇(之三)
- 10. Leetcode 209. 长度最小的子数组 (数组-同向双指针-滑动窗口)
- 【AI产品】超长文详解作业帮产品逻辑和技术原理
- vue.js+vscode+visual studio在windows下搭建开发环境
- 微软的判断一个数是不是质数的算法
- 如何将 MacBook 的外置屏幕设置为主屏幕
- SpringBoot整合Sharding-JDBC实现水平分表
- 三星note10 android q,【极光ROM】-【三星NOTE10/NOTE10+/5G N97XX-9825】-【V5.0 Android-Q-TE9】...
- oracle数据库的sql语句练习1
- PDF怎么转图片格式?分享三个不错的方法
- 导致ERP企业管理系统实施失败的四点原因
- body 没有被撑开_flex布局被子元素撑开如何保持内容不超出容器的方法
- VBA学习_4:运算符
- VueJS学习资料大全
- anaconda图形界面打开方式
- 再见了 SELECT *!大厂的 MySQL 查询优化方案,确实牛逼!
- Python项目通用的目录结构总结