一.高清壁纸批量下载

1.概述

此代码是使用python多线程批量下载高清壁纸的一个小脚本,代码略为简陋.
此代码仅供学习与交流,请不要用于违法用途.


import requests
from lxml import etree
import re
import time
from concurrent.futures import ThreadPoolExecutor, wait, ALL_COMPLETED# 爬取高清壁纸排行榜# 获取图片下载地址
def getPicUrl():url = "https://wallhaven.cc/toplist?page=9999"req = requests.get(url);html = etree.HTML(req.text)# 通过获取报错页面获取最大页数img_list = html.xpath('//*[@id="thumbs"]/section[1]/header/h2/text()[2]')[0]comp = re.compile("-?[1-9]\d*")list_int = comp.findall(img_list)[0]print("一共有"+list_int+"页")for i in range(1,int(list_int)): #可修改int(list_int)指定需要下载的页数url = "https://wallhaven.cc/toplist?page={}".format(i)req = requests.get(url);html = etree.HTML(req.text)for j in range(1,30): # 每一页的图片数try:'''1.首先获取低画质图片下载链接: th.wallhaven.cc/small/kx/kx98xd.jpg2.找到高画质图片下载链接: w.wallhaven.cc/full/kx/wallhaven-kx98xd.jpg3.找相同之处拼接url4.将url添加到列表'''urlXpath='//*[@id="thumbs"]/section/ul/li[{}]/figure/img/@data-src'.format(j)img_list = html.xpath(urlXpath)[0]newUrl=str(img_list).split("/")newImgUrl="https://w.wallhaven.cc/full/"+ newUrl[4] + "/wallhaven-" + newUrl[-1]picList.append(newImgUrl) #将图片下载地址添加到列表except(IndexError): #数组越界异常处理print("本页结束")break# 下载图片
def picDownload(a):try:imgname = a.split("/")[-1] #设置图片名img = requests.get(a,headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36'},timeout=5)with open ("E:/img/"+imgname,mode='wb') as f:f.write(img.content)time.sleep(0.1)except:print("下载失败")passif __name__ == '__main__':start_time = time.time()picList = []getPicUrl()#单线程# for i in range(0,len(picList)):#     picDownload(picList[i])#多线程executor = ThreadPoolExecutor(max_workers=10)  # 线程个数# submit()的参数:第一个为函数, 之后为该函数的传入参数,允许有多个future_tasks = [executor.submit(picDownload, i) for i in picList]wait(future_tasks, return_when=ALL_COMPLETED)# 等待所有的线程完成,才进入后续的执行end_time = time.time()print("完成时间: %s S" % (end_time - start_time))

爬取1页的效果,想下载多少可以自己去改

使用python实现高清壁纸批量下载相关推荐

  1. 高清壁纸免费下载网站

    高清壁纸免费下载网站 图站网:https://www.piczhan.com/

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

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

  3. 微软官网真的是一个神奇的地方,高清壁纸,直接下载

    目标网址:https://wallpapers.microsoft.design/ 微软官网真的是一个神奇的地方,今天浏览发现里面竟然还藏着一个超清高质量壁纸板块,实在是太喜欢里面的壁纸风格,虽然不是 ...

  4. Python批量爬取王者荣耀英雄高清壁纸

    Python批量爬取王者荣耀英雄高清壁纸 文章目录 Python批量爬取王者荣耀英雄高清壁纸 前言 爬虫步骤 python代码实现 总结 前言 很多喜欢玩王者的朋友很希望把王者荣耀的英雄图片拿来做壁纸 ...

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

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

  6. python网络爬虫快速下载4K高清壁纸

    python网络爬虫快速下载4K高清壁纸 此处给出下载壁纸的链接地址彼岸图网,进入网站之后,我们看到可以下载风景,游戏,动漫,美女等类型的4K图片,装逼一下,re库有贪婪匹配,那我们就写一个通用代码来 ...

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

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

  8. python代码壁纸-python实现壁纸批量下载代码实例

    前言 好久没有写文章了,因为最近都在适应新的岗位,以及利用闲暇时间学习python.这篇文章是最近的一个python学习阶段性总结,开发了一个爬虫批量下载某壁纸网站的高清壁纸. 注意:本文所属项目仅用 ...

  9. python代码壁纸-70行python代码实现壁纸批量下载

    前言 好久没有写文章了,因为最近都在适应新的岗位,以及利用闲暇时间学习python.这篇文章是最近的一个python学习阶段性总结,开发了一个爬虫批量下载某壁纸网站的高清壁纸. 注意:本文所属项目仅用 ...

最新文章

  1. 用CSS制作圆角框的方法一,二
  2. 2021高考成绩查询是几点,2021高考查分是从几点到几点
  3. mysql5.6.37 主从同步_MySQL5.6 Replication主从复制(读写分离) 配置完整版
  4. 如何让你的百万级SQL运行得更快 else
  5. java nosql_Java EE的NoSQL的未来
  6. oracle判断数据出现交叉,Oracle!你必须要知道的Knowledge points(一)
  7. hive 十六进制转十进制_hive 常用运算
  8. 微信小程序|area组件使用的地址数据文件
  9. C++中的内存分配new()
  10. 2016.8.23 项目总结
  11. php为什么发送不到sql,PHP-为什么我的Ajax无法执行我的SQL查询?
  12. boost电路输出电流公式_boost升压电路参数计算
  13. libtorch-gpu推理时占用CPU 100%问题解决
  14. matlab求解极限问题(limit函数的用法)
  15. 2013.12.26 M-Learning
  16. 信息系统监理师题库_软考信息系统监理师题库
  17. Bath Body 純白花漾系列
  18. 有哪些业务会用到物理服务器?
  19. LCD1602的使用详解
  20. IDEA配置xml文件头报错:URI is not registered (Settings | Languages Frameworks | Schemas and DTDs) 亲测有效!!!

热门文章

  1. IM系统:消息推送及离线存储
  2. 手机长途话费应再降!
  3. 关于java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup问题的解决方法
  4. Android Notification 的声音和震动
  5. linux同步机制-complete
  6. Chrome 浏览器滚动截图
  7. 旅游可视化系统flask+pyecharts
  8. 浅谈文件包含之包含pearcmd.php漏洞
  9. C语言:输入一个浮点数,保留两位小数,对第三位小数四舍五入
  10. oracle 10.2.0.1 install for centos 5.9(ins_rdbms.mk问题)