壁纸 订阅
墙纸也称为壁纸,是一种用于裱糊墙面的室内装修材料,广泛用于住宅、办公室、宾馆、酒店的室内装修等。材质不局限于纸,也包含其他材料。歧义:墙纸容易和桌面壁纸混淆,后者是设置于电脑桌面的图片。因为具有色彩多样、图案丰富、豪华气派、安全环保、施工方便、价格适宜等多种其它室内装饰材料所无法比拟的特点,故在欧美、日本等发达国家和地区得到相当程度的普及。壁纸分为很多类,如覆膜壁纸、涂布壁纸、压花壁纸等。通常用漂白化学木浆生产原纸,再经不同工序的加工处理,如涂布、印刷、压纹或表面覆塑,最后经裁切、包装后出厂。具有一定的强度、韧度、美观的外表和良好的抗水性能。 展开全文
墙纸也称为壁纸,是一种用于裱糊墙面的室内装修材料,广泛用于住宅、办公室、宾馆、酒店的室内装修等。材质不局限于纸,也包含其他材料。歧义:墙纸容易和桌面壁纸混淆,后者是设置于电脑桌面的图片。因为具有色彩多样、图案丰富、豪华气派、安全环保、施工方便、价格适宜等多种其它室内装饰材料所无法比拟的特点,故在欧美、日本等发达国家和地区得到相当程度的普及。壁纸分为很多类,如覆膜壁纸、涂布壁纸、压花壁纸等。通常用漂白化学木浆生产原纸,再经不同工序的加工处理,如涂布、印刷、压纹或表面覆塑,最后经裁切、包装后出厂。具有一定的强度、韧度、美观的外表和良好的抗水性能。
信息
外文名
wallpaper
拼    音
qiáng zhǐ
别    名
壁纸 墙布
用    途
装饰墙面
词    性
名词
中文名
墙纸
墙纸发展历程
墙纸同其他装饰材料一样,随着世界经济文化的发展而不断发展变化着。不同时期墙纸的使用是当地经济发展水平、新型材料学、流行消费心理综合因素的体现。早在中国的唐朝时期,就有人在纸张上绘图来装饰墙面。19世纪中叶,英国人威廉·莫利斯开始大批量生产印刷墙纸,有了现代意义上的墙纸。随着时代的变迁,墙纸的发展随著世界经济文化的发展而不断发展,先后经历了:纸、纸上涂画、发泡纸、印花纸、对版压花纸、特殊工艺纸的发展变化过程。最初的墙纸是在墙上绘制、印染各种图案而成。有一定的迷幻效果,但也仅限于王室宫廷等高级场所做局部装饰使用。真正大面积随其他装饰材料走入居家生活,还是在公元20世纪70年代末80年代初。整个80年代,是墙纸盛行的时期。“墙纸”又称网版浮雕发泡,是指在原材料中添加发泡剂,在生产过程中辅以高温,使得膨松剂完成类似“发酵”的过程。因此生产出来的墙纸会有凹凸感,手感柔软。此类墙纸的优点是立体感强,可增加房间的空间感。但缺点也显而易见:不耐磨,容易刮伤、易受污。发泡墙纸已逐步被淘汰,但在一些房间的天花板上仍然可见到使用。在胶面墙纸推出之初,质感表现出光泽的丝光墙纸广受欢迎。到了後期,随著房屋装饰业的流行趋势改变,无光泽的哑光墙纸(布感墙纸)逐渐领导了潮流。墙纸对於色彩、图案的表现力越来越强烈,受到消费者的普遍欢迎。各大厂商为此展开了激烈的竞争。到了80年代末期,随著塑胶工业的发展,出现了发泡墙纸的替代品——胶面墙纸。这种墙纸不发泡,因此质地较硬,极大地改善了发泡墙纸的缺点。防水、防潮、耐用、印花精致、压纹质感佳,可任意在墙纸上展现出各种图案和花纹,其色彩表现力、实用性开创了墙纸发展的崭新一页。胶面墙纸在全世界的使用率占到70%左右。20世纪90年代末期至21世纪初期,布纹感的墙纸开始流行。在国内,墙纸起步较晚。1976年到1986年,墙纸主要应用于一些高档饭店、宾馆。1986年到2001年主要流行的是发泡墙纸,到1992年时发展到顶峰,随后因质量问题,市场占有率下降。 墙纸效果图(9张) 墙纸作为能够美化环境的装饰材料,在很多场所都适用。家庭用纸:客厅、卧室、餐厅、儿童房、书房、娱乐室等;商业空间:宾馆酒店、餐厅、百货大楼、商场、展示场等;行政空间:办公楼、政府机构、学校、医院等;娱乐空间:餐厅、歌舞厅、酒吧、KTV、夜总会、茶馆、咖啡馆等。由于壁纸具有的特殊性,其装修的色彩和风格的选择成为整个家庭的基调,而壁纸的多样化完全符合家庭装饰中“轻装修、重装饰”的原则,深受广大消费者的喜爱,人们对家装的要求也日趋时尚个性,壁纸受到许多年轻人的推崇,但由于相关法规和行业自律的缺失,壁纸行业中存在良莠不齐的现象。壁纸的多样性与人们不再追求墙面的单一性,铸就了壁纸的发展方向与发展前景。如何正视壁纸行业的发展并把握住正确的发展方向是每一个壁纸厂商应该了解的。现状:壁纸行业发展局势严峻,单渠道多模式的营销方式  占据行业第一集团的壁纸品牌纷纷意识到行业的发展潜力,联合起来共同培育市场,通过引入国际装修风格来影响国内消费氛围,确立墙纸在家装市场上的重要地位,并向传统的涂料和墙面漆发起战略攻势,力图夺中国墙面装饰材料的重要地位。  优点:壁纸企业品牌好,经营门槛高  由于经营壁纸的门槛很高,很多商家对于壁纸品牌销售的意识深刻。壁纸行业,在我国正处于缓慢发展期,产品虽在环保、质量等方面有了显著提高,但服务体系的欠缺却成为全行业发展的障碍。市场管理乱、产品乱、价格乱、服务乱,尤其价格乱是最显著的。壁纸在我国室内装修中的使用率不过5%,而在欧洲、美国和日本、韩国,壁纸的使用率多在50%以上。中国的墙纸市场潜力可谓非常可观。面对这样的发展现状,为何我国壁纸的使用率,却如此的低呢?业内专家指出:“一些不规范的现状,导致消费者在选购墙面装饰材料时,舍弃了壁纸,而选择了乳胶漆和新兴的液体壁纸等其他材料。整个壁纸行业只有自律才能做大做强。”  没有严格的规范标准  当前影响壁纸进入百姓家庭的另一大问题就是价格黑洞,同一个产品这一家标500元一卷,另外一家是700,消费者搞不清楚这东西到底值多少钱。这种价格不稳定、不透明很大程度上影响了消费者购买过程中对壁纸的信任感,这种不信任造成壁纸市场上准顾客的流失。只有明确行业价格体系,规范生产厂家、包括经销商在内的流通渠道是解决价格问题的关键。另外要统一经营标准,重塑行业形象,零售价统一透明、售中服务标准统一,树立良好的行业口碑。  预测:壁纸行业市场前景  随着关注点的变化,墙纸的流行趋势也是有了一个质的上升,追求“时尚、环保、高品质”的品牌主张。未来的墙纸市场,必然会在对品质和质量的追求方面有所提升。消费者对墙纸基材的追求已经从前几年的不认可,逐步的认可。比如说像无纺布、纯纸这一类的东西,早几年都认为这个墙纸价格太贵了,成本太高,但是从这两年来看,消费者都逐步开始注重环保,更愿意选择这类型的产品,也更关注它的经久耐用性。 [1] 
收起全文
精华内容
下载资源
问答
  • 壁纸

    千次阅读 2019-03-02 14:23:10
    资源是自己的壁纸 https://pan.baidu.com/s/1CLtQoKkAxrb2076BPKh6jw 密码ted1

    资源是自己的壁纸

    https://pan.baidu.com/s/1CLtQoKkAxrb2076BPKh6jw   密码 ted1

     

    展开全文
  • Python爬虫,高清美图我全都要(彼岸桌面壁纸

    万次阅读 多人点赞 2020-03-30 11:13:49
    爬取彼岸桌面网站较为简单,用到了requests、lxml、Beautiful Soup4
    
    

    本人比较喜欢收集壁纸,发现彼岸桌面壁纸唯美分类下的壁纸,我都很喜欢;于是写了个爬虫,后来发现整个网站的网页结构基本一致,于是加了点代码,把整个网页的高清壁纸都爬下来了

    目录一:概览

    在电脑上,创建一个文件夹用来存放爬取彼岸桌面的图片

    此文件夹下有25个文件夹,对应分类
    在这里插入图片描述
    每个分类文件夹下有若干个文件夹,对应页码
    在这里插入图片描述
    页码文件夹下,存放图片文件

    目录二:环境准备

    还需要使用三个第三方包(有兴致的可以看看官方文档)

    • requests:通过http请求获取页面,官方文档
    • lxml:是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高,官方文档
    • Beautiful Soup4:可以从HTML或XML文件中提取数据,官方文档

    在终端中分别输入以下pip命令,安装它们

    python -m pip install beautifulsoup4
    python -m pip install lxml
    python -m pip install requests
    

    目录三:分析页面结构

    • 因为我的电脑的分辨率为1920 × 1080,所以我爬取的图片的分辨率为此
    • 彼岸桌面壁纸提供了许多分类供我们浏览:日历、动漫、风景、美女、游戏、影视、动态、唯美、设计…

      4k分类下的壁纸是该网站收益的重要资源,而且我没有4k壁纸的需求,对其不进行爬取

      CSS选择器:#header > div.head > ul > li:nth-child(1) > div > a,定位到包裹分类的a标签

    我以唯美分类下的壁纸,来讲解接下来怎么爬取图片
    在这里插入图片描述

    1. 总共有73页,除了最后一页,每页有18张图片

      但是在代码中我们最好需要自动获取总页码,嗯,彼岸桌面壁纸网站的结构是真的舒服,基本上每个页码的HTML结构都是类似的

      CSS选择器:div.page a,定位到包裹页码数的a标签,只有6个
    2. 并且每页的第三张图片都是一样的广告,需要在代码中把它过滤掉
    3. 每个分页的超链接很清晰:http://www.netbian.com/weimei/index_x.htm
      x 恰好为该页的页码
    4. 注意:在分类下看到的图片是略缩图,分辨率都较低;要得到1920 × 1080分辨率的该图,需要进行两次跳转

    以下图为例

    在分类页面中我们可以直接获取该图片的url,但很可惜,它的分辨率并不令人满意;
    通过检查,很明显的看到,在分类页中展示的每一个图片都指向另一个超链接
    在这里插入图片描述
    CSS选择器:div#main div.list ul li a,定位到包裹图片的a标签
    点击该图片,第一次跳转,转到新的链接,页面中显示有下列内容:
    在这里插入图片描述
    CSS选择器:div#main div.endpage div.pic div.pic-down a,定位到包裹图片的a标签

    点击下载壁纸(1920 × 1080)的按钮,第二次跳转,转向一个新的链接,终于达成目的,该链接中显示的图片的分辨率为 1920 × 1080

    一波三折,终于给我找到了该图片的1920 × 1080高清图

    CSS选择器:div#main table a img,定位到该图片的img标签

    经过本人爬取检验,其中有极个别图片由于很多零碎的问题而下载失败,还有少部分图片因为网站虽然提供1920 × 1080分辨率的下载按钮却给的其它分辨率

    目录四:代码分析

    • 下文中凡是 红色加粗内容,请按照我的解释,根据自身情况进行修改

    第一步:设置全局变量

    index = 'http://www.netbian.com' # 网站根地址
    interval = 10 # 爬取图片的间隔时间
    firstDir = 'D:/zgh/Pictures/netbian' # 总路径
    classificationDict = {} # 存放网站分类子页面的信息
    
    • index ,要爬取网页的网站根地址,代码中爬取图片需要使用其拼接完整url
    • interval,我们去爬取一个网站的内容时要考虑到该网站服务器的承受能力,短时间内爬取该网站大量内容会给该网站服务器造成巨大压力,我们需要在爬取时设置间隔时间
      单位:秒
      由于我要爬取彼岸桌面网站的全部高清图片,若集中在短时间内爬取,一方面会给网站服务器巨大的压力,一方面网站服务器会将我们的链接强制断掉,所以我设置的每张图片爬取时间间隔为10秒;如果你只是爬取少量图片,可以将间隔时间设置的短点
    • firstDir,爬取图片存放在你电脑上的根路径;代码中爬取图片时,在一级目录下会按照彼岸桌面唯美分类下的分页页码生成文件夹并存放图片
    • classificationDict,存放网站下分类指向的url、对应的分类文件夹路径

    第二步:获取页面筛选后的内容列表

    写一个函数,获取页面筛选后的内容数组

    • 传进来两个参数
      url:该网页的url
      select:选择器(与CSS中的选择器无缝对接,我很喜欢,定位到HTML中相应的元素)
    • 返回一个列表
    def screen(url, select):
        html = requests.get(url = url, headers = UserAgent.get_headers()) # 随机获取一个headers
        html.encoding = 'gbk'
        html = html.text
        soup = BeautifulSoup(html, 'lxml')
        return soup.select(select)
    
    • headers,作用是假装是个用户访问该网站,为了保证爬虫的成功率,每一次爬取页面随机抽取一个headers
    • encoding ,该网站的编码

    第三步:获取全部分类的url

    # 将分类子页面信息存放在字典中
    def init_classification():
        url = index
        select = '#header > div.head > ul > li:nth-child(1) > div > a'
        classifications = screen(url, select)
        for c in classifications:
            href = c.get('href') # 获取的是相对地址
            text = c.string # 获取分类名
            if(text == '4k壁纸'): # 4k壁纸,因权限问题无法爬取,直接跳过
                continue
            secondDir = firstDir + '/' + text # 分类目录
            url = index + href # 分类子页面url
            global classificationDict
            classificationDict[text] = {
                'path': secondDir,
                'url': url
            }
    

    接下来的代码,我以唯美分类下的壁纸,来讲解怎么通过跳转两次链接爬取高清图片

    第四步:获取分类页面下所有分页的url

    大部分分类的分页大于等于6页,可以直接使用上面定义的screen函数,select定义为div.page a,然后screen函数返回的列表中第6个元素可以获取我们需要的最后一页页码

    但是,有的分类的分页小于6页,
    比如:

    需要重新写一个筛选函数,通过兄弟元素来获取

    # 获取页码
    def screenPage(url, select):
        html = requests.get(url = url, headers = UserAgent.get_headers())
        html.encoding = 'gbk'
        html = html.text
        soup = BeautifulSoup(html, 'lxml')
        return soup.select(select)[0].next_sibling.text
    

    获取分类页面下所有分页的url

    url = 'http://www.netbian.com/weimei/'
    select = '#main > div.page > span.slh'
    pageIndex = screenPage(secondUrl, select)
    lastPagenum = int(pageIndex) # 获取最后一页的页码
    for i in range(lastPagenum):
        if i == 0:
            url = 'http://www.netbian.com/weimei/index.htm'
        else:
            url = 'http://www.netbian.com/weimei/index_%d.htm' %(i+1)
    

    由于该网站的HTML结构非常清晰,所以代码写起来简单明了

    第五步:获取分页下图片所指url

    通过检查,可以看到获取到的url为相对地址,需要将其转化为绝对地址

    select = 'div#main div.list ul li a'
    imgUrls = screen(url, select)
    

    通过这两行代码获取的列表中的值,形如此:

    <a href="/desk/21237.htm" target="_blank" title="星空 女孩 观望 唯美夜景壁纸 更新时间:2019-12-06"><img alt="星空 女孩 观望 唯美夜景壁纸" src="http://img.netbian.com/file/newc/e4f018f89fe9f825753866abafee383f.jpg"/><b>星空 女孩 观望 唯美夜景壁纸</b></a>
    
    • 需要对获取的列表进行处理
    • 获取a标签中的href属性值,并将其转化为绝对地址,这是第一次跳转所需要的url

    第六步:定位到 1920 × 1080 分辨率图片

    # 定位到 1920 1080 分辨率图片               
    def handleImgs(links, path):
        for link in links:
            href = link.get('href')
            if(href == 'http://pic.netbian.com/'): # 过滤图片广告
                continue
    
            # 第一次跳转
            if('http://' in href): # 有极个别图片不提供正确的相对地址
                url = href
            else:
                url = index + href
            select = 'div#main div.endpage div.pic div.pic-down a'
            link = screen(url, select)
            if(link == []):
                print(url + ' 无此图片,爬取失败')
                continue
            href = link[0].get('href')
    
            # 第二次跳转
            url = index + href
    
            # 获取到图片了
            select = 'div#main table a img'
            link = screen(url, select)
            if(link == []):
                print(url + " 该图片需要登录才能爬取,爬取失败")
                continue
            name = link[0].get('alt').replace('\t', '').replace('|', '').replace(':', '').replace('\\', '').replace('/', '').replace('*', '').replace('?', '').replace('"', '').replace('<', '').replace('>', '')
            print(name) # 输出下载图片的文件名
            src = link[0].get('src')
            if(requests.get(src).status_code == 404):
                print(url + ' 该图片下载链接404,爬取失败')
                print()
                continue
            print()
            download(src, name, path)
            time.sleep(interval)
    

    第七步:下载图片

    # 下载操作
    def download(src, name, path):
        if(isinstance(src, str)):
            response = requests.get(src)
            path = path + '/' + name + '.jpg'
            while(os.path.exists(path)): # 若文件名重复
                path = path.split(".")[0] + str(random.randint(2, 17)) + '.' + path.split(".")[1]
            with open(path,'wb') as pic:
                for chunk in response.iter_content(128):
                    pic.write(chunk)
    

    目录五:代码的容错能力

    一:过滤图片广告

    if(href == 'http://pic.netbian.com/'): # 过滤图片广告
        continue
    

    二:第一次跳转页面,无我们需要的链接

    彼岸壁纸网站,对第一次跳转页面的链接,给的都是相对地址

    但是极个别图片直接给的绝对地址,而且给的是该分类网址,所以需要做两步处理

    if('http://' in href):
        url = href
    else:
        url = index + href
    
    ...
    
    if(link == []):
        print(url + ' 无此图片,爬取失败')
        continue
    

    下面是第二次跳转页面所遇问题

    三:由于权限问题无法爬取图片

    if(link == []):
        print(url + "该图片需要登录才能爬取,爬取失败")
        continue
    

    四:获取img的alt,作为下载图片文件的文件名时,名字中携带\t 或 文件名不允许的特殊字符:

    • 在Python中,’\t’ 是转义字符:空格
    • 在windows系统当中的文件命名,文件名称中不能包含 \ / : * ? " < > | 一共9个特殊字符
    name = link[0].get('alt').replace('\t', '').replace('|', '').replace(':', '').replace('\\', '').replace('/', '').replace('*', '').replace('?', '').replace('"', '').replace('<', '').replace('>', '')
    

    五:获取img的alt,作为下载图片文件的文件名时,名字重复

    path = path + '/' + name + '.jpg'
    while(os.path.exists(path)): # 若文件名重复
        path = path.split(".")[0] + str(random.randint(2, 17)) + '.' + path.split(".")[1]
    

    六:图片链接404

    比如:
    在这里插入图片描述

    if(requests.get(src).status_code == 404):
        print(url + ' 该图片下载链接404,爬取失败')
        print()
        continue
    

    目录六:完整代码

    展开全文
  • 4K壁纸壁纸壁纸壁纸 Screen Wallpaper img0.jpg imgO_ 768x1024jpg img0. _768x1366.jpg img0_ _1024x768.jpg img0_ _1200x1920.jpg img0_ _1366x768.jp9 img0_ 1600x2560.jpg img0_ _2160x3840jp9 img0_...
  • 魔镜壁纸是一款可以隐藏在电脑桌面的壁纸工具,可以根据喜好选取不同的壁纸,并且无广告,无弹窗,静如沉睡的一款壁纸工具
  • 壁纸打包.zip

    2016-09-19 23:35:47
    壁纸
  • 壁纸:这是壁纸的集合
  • Windows 桌面动态壁纸 视频壁纸
  • Python爬虫 带你一键爬取王者荣耀英雄皮肤壁纸

    万次阅读 多人点赞 2020-10-02 19:03:15
    Python爬虫,手把手教你爬取王者荣耀英雄皮肤壁纸,创建一个文件夹, 里面又有按英雄名称分的子文件夹保存该英雄的所有皮肤图片。有详细的分析网页过程,具体的爬虫代码实现,并解决了过程中的报错fake_useragent....

    时间在流逝
    每一天
    都值得认真对待

    原文链接:https://yetingyun.blog.csdn.net/article/details/108901159
    创作不易,未经作者允许,禁止转载,更勿做其他用途,违者必究。

    一、前言

    王者荣耀这款手游,想必大家都玩过或听过,游戏里英雄有各式各样的皮肤,制作得很精美,有些拿来做电脑壁纸它不香吗。本文带你利用Python爬虫一键下载王者荣耀英雄皮肤壁纸。

    1. 目标

    创建一个文件夹, 里面又有按英雄名称分的子文件夹保存该英雄的所有皮肤图片

    URL:https://pvp.qq.com/web201605/herolist.shtml

    2. 环境

    运行环境:Pycharm、Python3.7

    需要的库

    import requests
    import os
    import json
    from lxml import etree
    from fake_useragent import UserAgent
    import logging
    

    庭云最近发现一个 IP 代理平台,在推出活动,可以限时免费领取1万代理IP~~ ,有需要的读者朋友可以长按识别下方二维码,注册体验一下下呀。

    二、分析网页

    首先打开王者荣耀官网,点击英雄资料进去。

    进入新的页面后,任意选择一个英雄,检查网页。

    多选择几个英雄检查网页,可以发现各个英雄页面的URL规律

    https://pvp.qq.com/web201605/herodetail/152.shtml
    https://pvp.qq.com/web201605/herodetail/150.shtml
    https://pvp.qq.com/web201605/herodetail/167.shtml
    

    发现只有末尾的数字在变化,末尾的数字可以认为是该英雄的页面标识。

    点击Network,Crtl + R 刷新,可以找到一个 herolist.json 文件。

    发现是乱码,但问题不大,双击这个 json 文件,将它下载下来观察,用编辑器打开可以看到。

    ename是英雄网址页面的标识;而 cname 是对应英雄的名称;skin_name为对应皮肤的名称。

    任选一个英雄页面进去,检查该英雄下面所有皮肤,观察url变化规律。

    url变化规律如下:
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/152/152-bigskin-1.jpg
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/152/152-bigskin-2.jpg
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/152/152-bigskin-3.jpg
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/152/152-bigskin-4.jpg
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/152/152-bigskin-5.jpg
    
    

    复制图片链接到浏览器打开,可以看到高清大图。

    观察到同一个英雄的皮肤图片 url 末尾 -{x}.jpg 从 1 开始依次递增,再来看看不同英雄的皮肤图片 url 是如何构造的。会发现, ename这个英雄的标识不一样,获取到的图片就不一样,由 ename 参数决定。

    https://game.gtimg.cn/images/yxzj/img201606/heroimg/152/152-bigskin-1.jpg
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/150/150-bigskin-1.jpg
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/153/153-bigskin-1.jpg
    # 可构造图片请求链接如下
    https://game.gtimg.cn/images/yxzj/img201606/heroimg/{ename}/{ename}-bigskin-{x}.jpg
    

    三、爬虫代码实现

    # -*- coding: UTF-8 -*-
    """
    @File    :王者荣耀英雄皮肤壁纸.py
    @Author  :叶庭云
    @Date    :2020/10/2 11:40
    @CSDN    :https://blog.csdn.net/fyfugoyfa
    """
    import requests
    import os
    import json
    from lxml import etree
    from fake_useragent import UserAgent
    import logging
    
    # 日志输出的基本配置
    logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s: %(message)s')
    
    
    class glory_of_king(object):
        def __init__(self):
            if not os.path.exists("./王者荣耀皮肤"):
                os.mkdir("王者荣耀皮肤")
            # 利用fake_useragent产生随机UserAgent  防止被反爬
            ua = UserAgent(verify_ssl=False, path='fake_useragent.json')
            for i in range(1, 50):
                self.headers = {
                    'User-Agent': ua.random
                }
    
        def scrape_skin(self):
            # 发送请求   获取响应
            response = requests.get('https://pvp.qq.com/web201605/js/herolist.json', headers=self.headers)
            # str转为json
            data = json.loads(response.text)
            # for循环遍历data获取需要的字段  创建对应英雄名称的文件夹
            for i in data:
                hero_number = i['ename']    # 获取英雄名字编号
                hero_name = i['cname']      # 获取英雄名字
                os.mkdir("./王者荣耀皮肤/{}".format(hero_name))  # 创建英雄名称对应的文件夹
                response_src = requests.get("https://pvp.qq.com/web201605/herodetail/{}.shtml".format(hero_number),
                                            headers=self.headers)
                hero_content = response_src.content.decode('gbk')  # 返回相应的html页面 解码为gbk
                # xpath解析对象  提取每个英雄的皮肤名字
                hero_data = etree.HTML(hero_content)
                hero_img = hero_data.xpath('//div[@class="pic-pf"]/ul/@data-imgname')
                # 去掉每个皮肤名字中间的分隔符
                hero_src = hero_img[0].split('|')
                logging.info(hero_src)
                # 遍历英雄src处理图片名称。
                for j in range(len(hero_src)):
                    # 去掉皮肤名字的&符号
                    index_ = hero_src[j].find("&")
                    skin_name = hero_src[j][:index_]
                    # 请求下载图片
                    response_skin = requests.get(
                        "https://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/{}/{}-bigskin-{}.jpg".format(
                            hero_number, hero_number, j + 1))
                    # 获取图片二进制数据        
                    skin_img = response_skin.content  
                    # 把皮肤图片保存到对应名字的文件里
                    with open("./王者荣耀皮肤/{}/{}.jpg".format(hero_name, skin_name), "wb")as f:
                        f.write(skin_img)
                        logging.info(f"{skin_name}.jpg 下载成功!!")
    
        def run(self):
            self.scrape_skin()
    
    
    if __name__ == '__main__':
        spider = glory_of_king()
        spider.run()
    

    运行效果如下:

    程序运行一段时间,英雄皮肤壁纸就都保存在本地文件夹啦,结果如下:

    四、其他说明

    • 不建议抓取太多数据,容易对服务器造成负载,浅尝辄止即可。
    • 通过本文爬虫,可以帮助你了解 json 数据的解析和提取需要的数据,如何通过字符串的拼接来构造URL请求。
    • 本文利用 Python 爬虫一键下载王者荣耀英雄皮肤壁纸,实现过程中也会遇到一些问题,多思考和调试,最终解决问题,也能理解得更深刻。
    • 代码可直接复制运行,如果觉得还不错,记得给个赞哦,也是对作者最大的鼓励,不足之处可以在评论区多多指正。

    解决报错:fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

    # 报错如下
    Error occurred during loading data. Trying to use cache server https://fake-useragent.herokuapp.com/browsers/0.1.11
    Traceback (most recent call last):
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 1318, in do_open
        encode_chunked=req.has_header('Transfer-encoding'))
      File "/usr/local/python3/lib/python3.6/http/client.py", line 1239, in request
        self._send_request(method, url, body, headers, encode_chunked)
      File "/usr/local/python3/lib/python3.6/http/client.py", line 1285, in _send_request
        self.endheaders(body, encode_chunked=encode_chunked)
      File "/usr/local/python3/lib/python3.6/http/client.py", line 1234, in endheaders
        self._send_output(message_body, encode_chunked=encode_chunked)
      File "/usr/local/python3/lib/python3.6/http/client.py", line 1026, in _send_output
        self.send(msg)
      File "/usr/local/python3/lib/python3.6/http/client.py", line 964, in send
        self.connect()
      File "/usr/local/python3/lib/python3.6/http/client.py", line 1392, in connect
        super().connect()
      File "/usr/local/python3/lib/python3.6/http/client.py", line 936, in connect
        (self.host,self.port), self.timeout, self.source_address)
      File "/usr/local/python3/lib/python3.6/socket.py", line 724, in create_connection
        raise err
      File "/usr/local/python3/lib/python3.6/socket.py", line 713, in create_connection
        sock.connect(sa)
    socket.timeout: timed out
     
    During handling of the above exception, another exception occurred:
     
    Traceback (most recent call last):
      File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 67, in get
        context=context,
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 223, in urlopen
        return opener.open(url, data, timeout)
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 526, in open
        response = self._open(req, data)
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 544, in _open
        '_open', req)
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 504, in _call_chain
        result = func(*args)
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 1361, in https_open
        context=self._context, check_hostname=self._check_hostname)
      File "/usr/local/python3/lib/python3.6/urllib/request.py", line 1320, in do_open
        raise URLError(err)
    urllib.error.URLError: <urlopen error timed out>
     
    During handling of the above exception, another exception occurred:
     
    Traceback (most recent call last):
      File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 154, in load
        for item in get_browsers(verify_ssl=verify_ssl):
      File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 97, in get_browsers
        html = get(settings.BROWSERS_STATS_PAGE, verify_ssl=verify_ssl)
      File "/usr/local/python3/lib/python3.6/site-packages/fake_useragent/utils.py", line 84, in get
        raise FakeUserAgentError('Maximum amount of retries reached')
    fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached
    

    解决方法如下:

    # 将https://fake-useragent.herokuapp.com/browsers/0.1.11里内容复制 并另存为本地json文件:fake_useragent.json
    # 引用
    ua = UserAgent(verify_ssl=False, path='fake_useragent.json')
    print(ua.random)
    
    运行结果如下:
    Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1500.55 Safari/537.36
    

    作者:叶庭云
    公众号:微信搜一搜【修炼Python】 分享学习文档、教程资料和简历模板
    CSDN:https://yetingyun.blog.csdn.net/
    本文仅用于交流学习,未经作者允许,禁止转载,更勿做其他用途,违者必究。
    热爱可抵岁月漫长,发现求知的乐趣,在不断总结和学习中进步,与诸君共勉。

    展开全文
  • 巨应动态壁纸2.0 开源动态壁纸软件,免费版壁纸引擎 版本特性: 壁纸核心端 提供API驱动壁纸核心功能 开机启动核心端即可运行壁纸 弱UI减少资源占用,仅提供托盘 增加exe壁纸支持 UI端 社区分享,此功能UI端提供 ...
  • 高清壁纸,20多个超级漂亮的壁纸,包满意,mac高清壁纸,苹果高清壁纸Screenshots.zip
  • jquery桌面壁纸网站壁纸图片拖动放大缩小查看 jquery桌面壁纸网站壁纸图片拖动放大缩小查看
  • upupoo动态壁纸

    2019-01-10 15:38:17
    upupoo动态桌面壁纸-壁纸商店-动态壁纸-微动壁纸-视频壁纸
  • idea快捷键壁纸和linux快捷键壁纸,方便快速查看idea和linux常用命令。
  • 微软Bing壁纸下载工具是一款壁纸下载工具,不同的区域壁纸可能不尽相同,选择bing区域然后点开始解析,待解析成功后就可以预览图片,或者直接设为壁纸。本工具支持解析微软必应
  • 睿派克壁纸下载工具支持解析某壁纸工具的大部分壁纸,支持17个分类(beta版本暂时支持5个分类),支援每次批量下载解析完成支持批量下载选择的分类的所有壁纸到程序当前目录下的
  • 高清青龙壁纸 桌面壁纸

    千次阅读 2020-07-05 10:05:52
    高清青龙壁纸 桌面壁纸 资源已上传至☞https://download.csdn.net/download/weixin_43510203/12576683

    高清青龙壁纸 桌面壁纸

    在这里插入图片描述

    资源已上传至☞https://download.csdn.net/download/weixin_43510203/12576683

    展开全文
  • 删除“必应好壁纸壁纸库”文件夹里的几张壁纸后,只保留两三张壁纸,再左键点击任务栏图标,切换壁纸,会出现黑屏(无壁纸现象)。 下图为多次左键任务栏图标切换壁纸的gif&#...
  • 小镇冬日夜景动态壁纸是一款以冬日夜景为主题的动漫壁纸,这款壁纸包含24众不同的画面,由不同时间段的小镇夜景图片组成,能够为大家带来不一样的视觉体验!这组小镇冬日夜景动态壁纸非常适合装饰大家的电脑界面。 ...
  • 壁纸 - 4K高清壁纸大全

    千次阅读 2020-02-29 21:07:37
    壁纸 - 4K高清壁纸大全
  • qq壁纸

    2012-11-04 22:40:12
    壁纸
  • 这些是小清新高清桌面壁纸,提供多张小清新精致的桌面壁纸,清新壁纸看上去非常的清爽,绿色的具有保护眼睛的功效,还有可爱类小清新桌面壁纸!如果您喜欢这些壁纸,那就赶紧到高图网 www.gaopic.com 满足壁纸控的你...
  • NBA球队高清手机桌面壁纸,都来收藏好了! 高图壁纸网站 www.gaopic.com 持续更新分享篮球壁纸、NBA球星壁纸 如果没有找到喜欢的NBA球星壁纸,记得到高图网! NBA湖人时隔十年重返总决赛图片 NBA名人堂...
  • 流星划过唯美星空封面,手机壁纸欣赏,手机壁纸效果展示,电脑壁纸欣赏,电脑桌面壁纸效果展示,手机壁纸电脑桌面壁纸效果展示ppt模板。
  • 易语言动态壁纸源码 支持视频壁纸 开源
  • 精美壁纸之Sogou壁纸2

    2012-10-04 17:40:58
    精美壁纸之Sogou壁纸2 美丽壁纸等着你哦
  • 12张PC壁纸,一张手机壁纸。 喜欢mac os的朋友可以下载,省去找的时间。
  • MacOS壁纸.zip

    2021-01-21 22:15:22
    壁纸\El Capitan 2.jpg 壁纸\El Capitan.jpg 壁纸\High Sierra.jpg 壁纸\Sierra.jpg 壁纸\Yosemite 2.jpg 壁纸\Yosemite 5.jpg 壁纸\Yosemite.jpg

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,559
精华内容 7,023
关键字:

壁纸