文档章节

python爬虫王者荣耀高清皮肤大图背景故事通用爬虫

o
 osc_gu9d45li
发布于 2019/04/06 11:52
字数 899
阅读 53
收藏 0

精选30+云产品,助力企业轻松上云!>>>

wzry-spider

python通用爬虫-通用爬虫爬取静态网页,面向小白

基本上纯python语法切片索引,少用到第三方爬虫网络库

这是一只小巧方便,强大的爬虫,由python编写

主要实现了:

1.爬取高清皮肤大图

2.爬取所有英雄背景故事

所需的库有

    1. requests 只用来发送请求和保存二进制文件

纯python爬虫,利用python索引切片文件读写不依赖第三方网络爬虫库实现硬核爬虫

完整项目放在GitHub:https://github.com/Ymy214/meizitu-spider

具体实现思路:

    1. 分析网页源代码结构
    1. 找到合适的入口
    1. 穷举访问并解析
    1. 爬取所有英雄所有皮肤图片

代码思路/程序流程:

我分析王者荣耀网站上面的英雄资料库发现所有英雄的页面基本上都是连贯的,并且还是偏向与静态网页没有过多的JavaScript渲染,所以比较适合来一波穷举遍历爬虫,但是速度也很快。利用python语法字符串操作,列表操作,字典操作等等循环遍历英雄页面利用python列表切片索引和字符串拼接等等方法来解析HTML得到皮肤图片链接和背景故事文本,将皮肤图片二进制文件保存为png高清大图,将所有英雄背景故事合并保存为文本文档

下面是功能以及效果展示

整体展示

爬取效果展示-丰功伟绩

爬取效果展示-硕果累累

背景故事

所有图片链接写入文本文件

代码展示

王者荣耀【皮肤高清大图爬虫】源代码如下

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import requests
fo = open('./wzry-jpg/wzry-pf.txt', 'w')


path = './wzry-jpg/'
ls = []     
for i in range(105,200):
    url = "http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/{0}/{0}-bigskin-1.jpg".format(i)
    status_code = requests.request('get', url).status_code
    if status_code != 200:
        continue
    for j in range(1, 9):
        imgurl = url[:-5] + '{}.jpg'.format(j)
        response = requests.request('get', imgurl)
        if response.status_code != 200:            
            continue
        ls.append(imgurl)
        ##下载
        print("开始下载第{}-{}个英雄皮肤图片>>>".format(i,j), end='')
        with open(path+str(i)+'-'+str(j)+'.png', 'wb') as f:
            f.write(response.content)
            print('======下载完成======')

    
for i in range(501,516):
    url = "http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/{0}/{0}-bigskin-1.jpg".format(i)
    status_code = requests.request('get', url).status_code
    if status_code != 200:
        continue
    for j in range(1, 9):
        imgurl = url[:-5] + '{}.jpg'.format(j)
        response = requests.request('get', imgurl)
        if response.status_code != 200:            
            continue
        ls.append(imgurl)
        ##下载
        print("开始下载第{}-{}个英雄皮肤图片>>>".format(i,j), end='')
        with open(path+str(i)+'-'+str(j)+'.png', 'wb') as f:
            f.write(response.content)
            print('======下载完成======')
##print(ls)
        
##连接写入txt文件
for line in ls:
    fo.write(line+'\n')
fo.close()



王者荣耀【英雄背景故事爬虫】源代码如下

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import requests
fo = open('R:/python123全国等考/wzry-jpg/pop-bd.txt', 'w')


ls = []     
for i in range(105,200):
    url = "https://pvp.qq.com/web201605/herodetail/{}.shtml".format(i)
    r = requests.request('get', url)
    if r.status_code != 200:
        continue
    r.encoding = 'gbk'
    name = r.text.split('cname')[1].split(',')[0].split("'")[1]
    text = r.text.split('pop-bd')[1].split('p>')[1][:-2]
    print("开始保存第{}个英雄背景故事>>>".format(i))
    fo.write('【'+name+'】'+'\n'+text+'\n'+'-'*30)

for i in range(501,516):
    url = "https://pvp.qq.com/web201605/herodetail/{}.shtml".format(i)
    r = requests.request('get', url)
    if r.status_code != 200:
        continue
    r.encoding = 'gbk'
    name = r.text.split('cname')[1].split(',')[0].split("'")[1]
    text = r.text.split('pop-bd')[1].split('p>')[1][:-2]
    print("开始保存第{}个英雄背景故事>>>".format(i))
    fo.write('【'+name+'】'+'\n'+text+'\n'+'-'*30)

##连接写入txt文件

fo.close()

        





另外本人还有面下给小白的

    1. 反防盗链爬取妹子图
    1. 王者荣耀背景故事爬虫

欢迎学习支持

有用或帮到你的话不妨点个star我将感激不尽

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
Python爬虫教程:爬取王者荣耀全套皮肤【附源码】

怎么获取全套皮肤?用钱买,或者用爬虫爬取下来~虽然后者不能穿。这个案例稍微复杂一点,但是一个非常值得学习的项目。 具体实现思路: 分析网页源代码结构 找到合适的入口 穷举访问并解析 ...

每天学Python
05/30
10
0
python妹子图爬虫5千张高清大图突破防盗链福利5千张福利高清大图

meizitu-spider python通用爬虫-绕过防盗链爬取妹子图 这是一只小巧方便,强大的爬虫,由python编写 所需的库有 requests BeautifulSoup os lxml 伪装成chrome浏览器,并加上referer请求头访...

osc_gu9d45li
2019/04/06
21
0
python爬虫 -- 网页分析(王者荣耀英雄皮肤)

python爬虫 -- 网页分析(王者荣耀英雄皮肤) 全英雄页面,分析数据位置 XHR(XMLHttpRequest)记录ajax请求 标头, 预览, 响应 url, user-agent用户浏览器身份标识 Python代码 运行结果...

coderzpw
02/24
11
0
用Python爬取"王者农药"英雄皮肤

王者荣耀 0.引言 作为一款现象级游戏,王者荣耀,想必大家都玩过或听过,游戏里中各式各样的英雄,每款皮肤都非常精美,用做电脑壁纸再合适不过了。本篇就来教大家如何使用Python来爬取这些精...

急速奔跑中的蜗牛
2019/06/14
0
0
推荐几个适合新人上手的Python项目

人生苦短,我用Python! Python的前景光明不许要过多赘述了,那么作为新人如何快速上手这门语言呢?废话不多说,今天给大家分享三个极实用的Python爬虫案例。 1 爬取网站美图 爬取图片是最常...

芜湖达内科技
2018/06/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JavaScript中的静态变量 - Static variables in JavaScript

问题: 如何在Javascript中创建静态变量? 解决方案: 参考一: https://stackoom.com/question/6RUF/JavaScript中的静态变量 参考二: https://oldbug.net/q/6RUF/Static-variables-in-Java...

法国红酒甜
今天
14
0
之间的区别 和

问题: I'm learning Spring 3 and I don't seem to grasp the functionality behind <context:annotation-config> and <context:component-scan> . 我正在学习Spring 3,并且似乎不太了解<......

javail
今天
11
0
业内首款,百度工业视觉智能平台全新亮相

本文作者:y****n 业内首款全国产化工业视觉智能平台——百度工业视觉智能平台亮相中国机器视觉展(Vision China),该平台所具有的核心AI能力完全自主可控,在质检、巡检等场景中具有高效、...

百度开发者中心
昨天
7
0
我们如何制作xkcd样式图? - How can we make xkcd style graphs?

问题: Apparently, folk have figured out how to make xkcd style graphs in Mathematica and in LaTeX . 显然,民间已经想出了如何在Mathematica和LaTeX中制作xkcd风格的图形。 Can we d......

富含淀粉
今天
10
0
OSChina 周四乱弹 —— 萝莉突然明白,这顿饭吃完就要上路了

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《宇宙の花》- 島みやえい子 手机党少年们想听歌,请使劲儿戳(这里) @野渡无人舟...

小小编辑
今天
87
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部