当前位置:   article > 正文

Python爬虫 爬取彼岸桌面壁纸 netbian 1920x1080_怎么调用彼岸壁纸api

怎么调用彼岸壁纸api

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

之前我们对使用Python语言进行网页爬取已经比较熟悉了。今天我们再对所用到的知识进行一下巩固,爬取彼岸桌面壁纸。之所以选择这个网站,是因为他的图片壁纸都是高分辨率的,非常适合作为桌面壁纸使用。网站是这样子滴
在这里插入图片描述

页面分析

1、通过一直点击 下一页 可以看到网站内的全部套图
在这里插入图片描述

2、通过爬取单个页面,可以获取到套图的首页地址

3、单个套图内图片上右键 -> 查看元素 即可拿到当前图片的地址。方法还是比较简单。
在这里插入图片描述
这样,就可以得到我们想要的资源。

关键源码

构造每个page的URL

        # 构造page url
        i = 2
        while i < 10:# 限制爬取页数
            url = 'http://www.netbian.com/meinv/index_' + str(i) + '.htm'  # http://www.netbian.com/meinv/index_2.htm
            print(url)
            self.urlManager.add_new_url(url)
            i = i + 1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

xpath解析单个套图

    def parseArtical(self, html_content):
        # 存放数据
        res_data = set()
        ht = etree.HTML(html_content)
        htmls = ht.xpath('//div[@id="main"]/div[@class="list"]/ul/li/a[@target="_blank"]')
        for i in range(len(htmls)):
            node = htmls[i]
            url = 'http://www.netbian.com' + str(node.xpath('./@href')[0])
            # print(url+' '+title+' '+cover_pic_url)
            artical = Artical()
            artical.url = url
            res_data.add(artical)
        return res_data
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

下载图片资源并保存

    def dealObj(self):
        self.logger.debug('begin dealObj')
        artical = self.__blockList.remove()
        if artical is not None:
            if not self.__oldUrlList.contains(artical.url):
                # 处理artical
                # print(artical.url)
                html_content=self.downloader.download_text(artical.url, headers, 'gbk')
                ht = etree.HTML(html_content)
                imgs= ht.xpath('//div[@id="main"]/div/div/p/a[@target="_blank"]/img')
                for i in range(len(imgs)):
                    node = imgs[i]
                    url=node.xpath('./@src')[0]
                    alt=node.xpath('./@alt')[0]

                    # 创建要保存的目录
                    root = 'F:/netbian/'

                    path=root+alt.strip()+'.jpg'
                    data = HtmlDownloader().download_bin(url,headers)
                    if data is not None:
                        fpath = path
                        with open(fpath, 'wb') as f:
                            f.write(data)
                            f.close()
                        self.logger.info('下载图片成功:' + path)
                    else:
                        self.logger.info('下载图片失败:'+path)

                self.__oldUrlList.add(artical.url)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

结果展示

可以看到,图片都是1920x1080的分辨率,制作精美非常养眼,用作桌面壁纸非常适合。

总结

大家是不是已经学会了呢?非常简单。如果还有什么不懂的,欢迎联系小白我。

不过大家一定不要频繁去下载,据说会给服务器带来压力,会封帐号,以后就不能查看了。

最后提醒大家,一点要以学习为重,小白我下载到的所有图片已删除,希望大家多多学习,多做有意义的事情,谢谢大家。

获取完整源码,欢迎关注 80后老吴
在这里插入图片描述

想要获取精美图片壁纸也可以找小白我,谢谢观看。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/486902
推荐阅读
相关标签
  

闽ICP备14008679号