一、前言

打过王者的童鞋一般都会喜欢里边设计出来的英雄吧,特别想把王者荣耀的英雄的高清图片当成电脑桌面

预览一下桌面吧:

是不是看着这样的桌面也很带感,_ (学会这个技术,你可以爬取其他网站的类似图片,哄妹子专用,O(∩_∩)O哈哈~)

二、程序实现

我们先去找一个靠谱的网站吧,自然而然的网站地址锁定在王者荣耀官网上,正好他给我们提供了壁纸页面 http://pvp.qq.com/web201605/wallpaper.shtml

一共14页

构建我们的目标数据URL

随便多翻几页,用firebug 等调试工具,观察一下我们的请求列表,找到其中特别明显的图片list api

问题简单了就:

urls = [ "http://apps.game.qq.com/cgi-bin/ams/module/ishow/V1.0/query/workList_inc.cgi?activityId=2735&page=%d&sVerifyCode=ABCD&sDataType=JSON&iListNum=20&totalpage=0&iOrder=0&iSortNumClose=1&jsoncallback=jQuery1710881537174597735 6_1486710433816&iAMSActivityId=51991&_everyRead=true&iTypeId=2&iFlowId=267733&iActId=2735&iModuleId=2735&_=1486710458098" % (p) for p in range(0,14) ]

获取文档的内容:

这一步就比较简单了,requests 堪称写给人类的http 请求库,可以自己参看他的api 很强大,可以完成,任何手工在浏览器上的任何行为,用得好,你可以省掉很多的事儿,顺路贴一个api 链接吧 (http://www.python-requests.org/en/master/)[http://www.python-requests.org/en/master/]

def loadUrlContent(url):

return requests.get(u).text

解析文档内容 :

api 返回情况,大致如下: 是一个jsonp callback的返回

这种情况一般是callback后边对应了一个json对象,我们可以用python的 json 类库来解析:

解析数据千差万别,本文的数据相对简单,所以用了相对简单的处理方式:

## 这种解析数据的代码并不适用于所有的页面

def jsonContent(pageContent):

json_content = pageContent.split("(")[1].split(")")[0]

return json.loads(json_content)

解析完成以后的一个json对象属性如下:

查看json 对象内容必备: https://www.json.cn/ 可以看到清晰的对象属性

很明显的,List 属性就是我们想要获取的壁纸对象了,然后,其中 sProdImgNo_1,2,3,4,5,6,7,8 中保存了,url 编码的图片url地址。

本实例为了演示我们只获取其中的 sProdImgNo_5 来做下载,大家可以根据需求做不同的遍历.

写一个简单的对象循环完成我们的子任务吧:

for item in pageJson['List']:

dealWithItem(item)

处理元素函数 , 下载文件图片:

观察发现图片url 是url编码好的地址: 我们可以用 urllib 的 unquote 方法转成原文:

获取的一个图片URL原文是这样的:

自行对比下,观测到的图片的真实地址如下:

然后,我们只需要简单的把 200 replace 成0 就ok 了。

下载文件,直接通过requests get url 保存成文件就ok啦。

三、运行效果

最终展示下我们的成果吧:

四、项目文件结构

python 爬取王者荣耀高清壁纸

注:本文著作权归作者,由demo大师代发,拒绝转载,转载需要作者授权

python爬取王者_python 爬取王者荣耀高清壁纸相关推荐

  1. python 爬取王者荣耀高清壁纸

    代码地址如下: http://www.demodashi.com/demo/13104.html 一.前言 打过王者的童鞋一般都会喜欢里边设计出来的英雄吧,特别想把王者荣耀的英雄的高清图片当成电脑桌面 ...

  2. python手机壁纸超清_Python爬虫-王者荣耀高清壁纸下载

    绪论 网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.python是一种跨平台的计算机程序设计语言.是一种 ...

  3. python爬虫练习高清壁纸【王者荣耀高清壁纸】python爬虫

    python爬虫练习高清壁纸[王者荣耀高清壁纸] 仅做练习使用,各位小伙伴不用乱来!!! 现成的代码,直接拿走研究,已经精简了自行美化 页面自己去分析分析 ,学习效果更佳. import reques ...

  4. python爬虫--王者荣耀高清壁纸下载(多线程)

    下面的代码是采用多线程的生产者消费者模式,下载速度比之前文章的普通下载快一点. 普通下载的链接:python爬虫–王者荣耀高清壁纸下载 代码在下载方面是没有问题的,可以直接运行,就是在收集打不开链接的 ...

  5. 爬虫 | 王者荣耀高清壁纸-多线程

    # CY3761 | 2021-11-04 18:23 import json import os import queue import time import urllibimport reque ...

  6. Python多线程爬虫之二:爬取王者荣耀高清壁纸(多线程)

    一.项目分析 1.查询爬取网址 robots 权限 1.王者荣耀官网:https://pvp.qq.com/ 2.访问王者荣耀官网 rbots 权限: https://pvp.qq.com/robot ...

  7. python多线程爬取王者荣耀高清壁纸过程

    多线程与爬虫 目标url json中查找url 访问url 读取json 查看json的list数组 全部图片 粗暴的单线程获取 多线程执行 目标url 查看http://pvp.qq.com/web ...

  8. 王者荣耀高清壁纸脚本Python文件

    网上查的不能运行,自己修改后,顺利执行,获取王者荣耀的所有高清壁纸,如果不能运行,请评论或者私信给我,配环境是个麻烦事,建议Python3.0以上执行,很爽! """抓取 ...

  9. 学习笔记(47):150讲轻松搞定Python网络爬虫-高速下载王者荣耀高清壁纸(1)

    立即学习:https://edu.csdn.net/course/play/24756/284634?utm_source=blogtoedu 解码: from urllib import parse ...

最新文章

  1. Springboot监控之一:SpringBoot四大神器之Actuator之3-springBoot的监控和管理--指标说明...
  2. 寒假每日一题(提高组)【Week 4 完结】
  3. Yii框架 ajax案例
  4. javascript基础语法——词法结构
  5. 开启php curl函数库的步骤
  6. [渝粤教育] 宁波大学 聆听中国 参考 资料
  7. 刘汝佳训练指南——数论专题知识点总结:
  8. JavaScript | 演示函数中按值调用的示例
  9. 开发人员kpi怎么写_为什么开发人员应该知道怎么写
  10. jwt https://mp.weixin.qq.com/s/8FdzMq4msyhqE9Rrhgwqjw
  11. python自动化测试流程_接口自动化基本流程(python)
  12. python冒泡循环示例_Python for循环示例
  13. c语言代码混淆器,代码混淆
  14. java 根据拼音查询汉字_Java 根据汉字获取其拼音
  15. 电脑开机出现警报音后提示要按F1才能进入的分析处理
  16. kafka+fluentd+heka了解资料
  17. 蘑菇街 java 面试_【蘑菇街java工程师面试】蘑菇街Java后台开发二面挫败-看准网...
  18. 第5章 以太网与FlexRay
  19. 基于JSP的在线学习网站 的设计与实现
  20. c语言中 p2 amp n1表示什么意思,2005年9月全国计算机等级考试二级C语言笔试试题及答案mjj...

热门文章

  1. Dom 和 Jquery,json对象的使用方法
  2. OverMail 超越邮件
  3. Linux 命令(136)—— curl 命令
  4. java基础知识简化
  5. Springboot自定义注解实现用户登录状态校验(一)
  6. Oracle 安装 RAC 11.2.0.4 centos7.4 -udev磁盘绑定/执行root脚本报错
  7. Leetcode 124.二叉树中的最大路径和
  8. (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  9. 成长,责任,和公司的关系
  10. Java中线程的创建有两种方式