java爬取王者荣耀全皮肤图片
一.简单介绍爬虫
网络爬虫(Web Crawler),又称为网络蜘蛛(Web Spider)或 Web 信息采集器,是一种按照一定规则,自动抓取或下载网络信息的计算机程序或自动化脚本,是目前搜索引擎的重要组成部分。
我的这个demo 是基于Jsoup做个简单实现java爬虫的
jsoup是一款Java的HTML解析器,主要用来对HTML解析 jsoup 中文官网
王者荣耀官网:https://pvp.qq.com/
先导入maven依赖
<!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.13.1</version>
</dependency>
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
public class ReptilePicImgs {
public static void main(String[] args) throws IOException {
long t1 = System.currentTimeMillis();
Connection connection = Jsoup.connect("https://pvp.qq.com/web201605/herolist.shtml");
long t2 = System.currentTimeMillis();
System.out.println("创建连接的时间:"+(t2-t1)+"毫秒");
Document document = connection.get();
long t3 = System.currentTimeMillis();
System.out.println("读取document信息所用时间:"+(t3-t2)+"毫秒");
Element elementUL = document.selectFirst("[class=herolist clearfix]");
Elements elementsLis = elementUL.select("li");
int size = 0;
for(Element elementLi : elementsLis) {
Element elementA = elementLi.selectFirst("a");
String href = elementA.attr("href");
String heroName = elementA.text();
String netPath = "https://pvp.qq.com/web201605/" + href;
Connection newConnection = Jsoup.connect(netPath);
Document newDocument = newConnection.get();
Element div = newDocument.selectFirst("[class=zk-con1 zk-con]");
String divStyle = div.attr("style");
String backgroundUrl = divStyle.substring(divStyle.indexOf("'") + 1, divStyle.lastIndexOf("'"));
//System.out.println(backgroundUrl);
Element picUl = newDocument.selectFirst("[class=pic-pf-list pic-pf-list3]");
String allName = picUl.attr("data-imgname");
allName = allName.replace("|","-");
String[] preNames = allName.split("-");
for(int i = 0;i<preNames.length;i++){
if(preNames[i].contains("&")){
preNames[i] = preNames[i].substring(0,preNames[i].lastIndexOf("&"));
}
}
String[] urldatas = new String[preNames.length];
int skinNum = preNames.length;
for (int i = 0;i<skinNum;i++){
urldatas[i] = backgroundUrl.replace("1.jpg",String.valueOf(i+1)+".jpg");
//System.out.println(urldatas[i]);
}
//开始下载:
for(int i = 0;i<preNames.length;i++){
String lastName = heroName+"-"+preNames[i];
System.out.println("下载:<<"+lastName+">>,图片路径:-->"+urldatas[i]);
URL url = new URL("https:"+urldatas[i]);
//根据这个url地址,创建一个输入流
InputStream inputStream = url.openStream();
FileOutputStream fileOutputStream = new FileOutputStream("C://wangzhe//"+lastName+".jpg");
//需要创建一个byte数组
byte[] b = new byte[1024];
//读取到的数据临时存放在b字节数组内
int count = inputStream.read(b);//count 指的是读取的有效字节个数
while (count!=-1){
fileOutputStream.write(b,0,count);
fileOutputStream.flush();
count = inputStream.read(b);
}
fileOutputStream.close();
inputStream.close();
size++;//记录总共下载的图片个数
}
}
long t4 = System.currentTimeMillis();
double time = (double) (t4-t1)/1000;
System.out.println("恭喜您已完成全部下载,共耗时:"+time+"秒,下载图片"+size+"张");
}
}
java爬取王者荣耀全皮肤图片相关推荐
- 【云云怪】第5个项目:爬取王者荣耀全皮肤图片
[项目预览] [创作背景] 自上一个项目(项目4)功败垂成之后,我花了挺多时间调试,找了一个信任我的小伙伴,帮我测试,我到底能不能通过小程序偷到他电脑里的东西.直到学到了爬虫,我对偷东西小程序的热情一 ...
- 一键爬取王者荣耀全皮肤高清图片【方法一】
文章目录 前言 一.爬虫是什么? 二.使用步骤 1.引入库 2.访问的URL 3.爬取思路 三.皮肤URL(需要手动找出) 完整代码 四.效果展示 总结 前言 相信很多小伙伴们都喜欢玩王者荣耀这款MO ...
- 教你用python爬取王者荣耀英雄皮肤图片,并将图片保存在各自英雄的文件夹中。(附源码)
教你用python爬取王者荣耀英雄皮肤图片,并将图片保存在各自英雄的文件夹中.(附源码) 代码展示: 保存在各自的文件夹中 美么? 让我们开始爬虫之路 开发环境 windows 10 python3. ...
- python爬取王者_python爬取王者荣耀全皮肤的简单实现代码
相信现在很多人都喜欢玩王者荣耀这款手游,里面好看的皮肤令人爱不释手.那么你有没有想过把王者荣耀高清皮肤设置为壁纸,像下面这样 今天就来教大家如何利用python16行代码,实现王者荣耀全部高清皮肤的下 ...
- Python爬虫基础--爬取王者荣耀英雄皮肤图片
文章目录 思路分析 涉及到的知识点 Json数据说明 `herolist.json`:英雄列表 皮肤图片尺寸分析 程序说明 代码 结果(数据)分析 声明 这里只是简单介绍主要内容,详见github,仓 ...
- python爬取王者荣耀全皮肤,漫客的福利!
先明确思路: 寻找皮肤图片地址 1 找到英雄列表 2 找到英雄皮肤地址 下载图片 1 英雄有几个皮肤 2 下载文件 进入正题:如何爬取王者荣耀的英雄皮肤照片? 分为两步: 找到皮肤图片的地址 下载图片 ...
- 一键爬取王者荣耀全皮肤高清图片【方法二】
爬取王者荣耀官网皮肤[爬虫] 上次我们讲了爬虫的定义以及爬取王者荣耀皮肤的思路. 今天我们换一种方式来爬取同样的内容.大体上思路和方法一相同. 方法一传送门:方法一 方法二 # 网址:https:// ...
- python爬取王者荣耀全皮肤高清无水印图片
前期准备:安装requests库,我猜你可能需要: Python网络爬虫与信息提取笔记01-Requests库入门 Windows下安装pip和换源 import os import requests ...
- python-scrapy爬虫框架爬取王者荣耀英雄皮肤图片和技能信息
1.创建工程 将路径切换到想要保存爬虫项目的文件夹内,运行scrapy startproject WZRY新建一个名为WZRY的工程. 2.产生爬虫 将路径切换至新创建的spiders文件夹中,运行s ...
最新文章
- 计算机系男同学追班里一女同学,未果......
- Java OpenCV-4.0.0 图像处理22 图像模板匹配
- 【译】JS基础算法脚本:类数组(arguments)去重
- Jeecg-Boot 快速开发平台,前后端分离—开发工具安装
- 链接生成动态二维码图片显示在页面上
- bzoj 1665: [Usaco2006 Open]The Climbing Wall 攀岩(最短路)
- 游戏筑基开发之利用文件函数读出文件数据及处理(反序列化)(C语言)
- cocos2d-x自制工具07:打印cocos2d-x的节点树
- iphone屏幕录制_苹果6s有屏幕录制吗
- 使用for循环打印出大写字母的ASCII码对照表
- 网络流基础、最大流最小割定理以及证明
- Excel数据分析高级技巧①——动态图表制作(offset,vlookup,控件…)
- 理解Liang-Barsky裁剪算法的算法原理
- python程序设计黄锐军_Python程序设计
- java删除表格_Java 创建、删除Word表格
- 单机:Oracle 11GR2 数据库一键安装
- kubectl describe
- (笔记)SLF4J: No SLF4J providers were found.解决方法
- My SQL 安装教程---踩过所有第一次安装会踩的坑
- Telegram Chat Bot采坑日记