全网采集壁纸360网站全网壁纸

news/2024/11/20 3:34:51/

1. 采集网站:

                   壁纸360

    采集内容:

                  壁纸360全网超高清壁纸

2.采集思路:

         网页导航栏一共有16个分类,第一个分类包含了后面所有的,为了将图片按类型存储,所以就只采集了后面15个标签。

 

那么首先采集下分类标签及其名称(最基本的采集,不用多说啥了,直接一步到位)

接下来就是查找图片链接,查看列表页中每张图片

 

 从上面链接中我们可以看到图片是被缩放成 208x130像素的,那么如何抓到原像素图片?
点击图片到图片详情页,此时发现图片像素高一点了,可以达到800x580

还是不能达到想要的像素?
仔细观察该页面的按钮,还有个点击下载壁纸大图,如下图

 点击后检查网络请求,可以看到已经将最高清图片请求过来了

最后根据需要采集不同清晰度的图片接口
最低像素采集列表页链接,格式: http://www.bizhi360.com/allimg/litimg/6730_1.jpg
普通像素采集详情页链接, 格式:http://www.bizhi360.com/allimg/bpic/30/6730.jpg
高清像素采集点击下载壁纸获取到的连接,格式: http://pic.bizhi360.com/bbpic/30/6730.jpg

多次观察,发现路由是有规律的,照着处理就行,已高清为例
在列表页中,我们能抓到 /allimg/litimg/6730_1.jpg

高清图片的链接是: http://pic.bizhi360.com/bbpic/30/6730.jpg
http://pic.bizhi360.com/bbpic/ + 链接中整数(6730后两位) + 链接中整数部分(6730)  + ".jpg"

realImgUrl = sourceUrl2 + url1[0][-2:] + "/" +url1[0] + ".jpg"

最后一个的话可能就是翻页问题了,观察一下倒数第二页和最后一页的网页结构

 所以采集页数和终止条件如下:

 

3.整体代码: 

采集最高清的图片,本人采集用了代理,我不确定不用代理采集会不会封IP,建议带上IP代理。以下是去除代理厚后的整体代码:

# -*- coding: UTF-8 -*-
'''
@Author :Jason
@Desc   :http://www.bizhi360.com/
360壁纸采集
网站壁纸一共15个类
'''
import requests
from lxml import etree
import os
import re
import timedef getImageTypeAndName():'''主要抓取壁纸分类链接 和 壁纸分类名称:返回壁纸分类连接 壁纸分类名称'''url = "http://www.bizhi360.com"headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36",}res = requests.get(url=url,headers = headers)res.encoding = "gbk"etreeHtml = etree.HTML(res.text)imageType = etreeHtml.xpath('//div[@id="tagnav"]//div[@class="container"]/a/@href')imageTypeName = etreeHtml.xpath('//div[@id="tagnav"]//div[@class="container"]/a/text()')return imageType[1:],imageTypeName[1:] #去掉/desk/ 和 壁纸图片大全 这一分类,包含所有图片def downloadImage():'''直接采集图片,根据图片分类保存到指定文件夹:return:None'''headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36",}sourceUrl1 = "http://www.bizhi360.com"sourceUrl2 = "http://pic.bizhi360.com/bbpic/"imageType, imageTypeName  = getImageTypeAndName()for i,url in enumerate(imageType):if os.path.exists(imageTypeName[i]): #文件夹存在,不操作passelse:#文件夹不存在,创建文件夹os.mkdir(imageTypeName[i])print("创建文件夹")for page in range(1,1000): #先假设每个分类有1000页,后期增加判断条件可提前结束listUrl = sourceUrl1 + url  + "list_" + str(page) + ".html"print(listUrl)res = requests.get(listUrl, headers = headers)res.encoding = "gbk"etreeHtml = etree.HTML(res.text)imageUrlList = etreeHtml.xpath('//*[@id="main"]/div/div[1]/ul/li/a/img/@src')for imageUrl in imageUrlList:url1 = re.findall(r'/(\d+).*?\.jpg',imageUrl)realImgUrl = sourceUrl2 + url1[0][-2:] + "/" +url1[0] + ".jpg"print(realImgUrl)resImg = requests.get(url=realImgUrl,headers=headers)with open("./"+imageTypeName[i] +"/"+ url1[0] + ".jpg","wb") as f:f.write(resImg.content)print("壁纸", url1[0] + ".jpg","保存完毕")if "<span>下一页</span>" in res.text:#判断抓取终止条件,存在那么就停止抓取breakif __name__ == "__main__":# getImageTypeAndName()downloadImage()print("  ")

4.最终采集效果:

 

5.说明:

        没有用线程进程一是因为代理问题,二是本身不急,写完代码后直接扔服务器让他自己抓取去了。有需求的可以完善代码,加快抓取速度。异常这块也没有搞(#自信qaq)
 

 

  

                        

 

 


http://www.ppmy.cn/news/161717.html

相关文章

壁纸搜索系统/壁纸管理系统的设计与实现

摘 要 本论文主要论述了如何使用java语言开发一个壁纸搜索系统&#xff0c;系统将严格按照软件开发流程进行各个阶段的工作&#xff0c;面向对象编程思想进行项目开发。在引言中&#xff0c;本人将论述壁纸搜索的当前背景以及系统开发的目的&#xff0c;后续章节将严格按照软件…

2021壁纸网站大集合优质壁纸,4k,8k,应有尽有!

极简壁纸&#xff1a;https://bz.zzzmh.cn/ 十分推荐 风格种类齐全&#xff0c;壁纸质量高&#xff1a;http://www.win4000.com/ 类似极简壁纸&#xff1a;http://lab.mkblog.cn/wallpaper/ 3G壁纸&#xff0c;动漫风&#xff1a;https://desk.3gbizhi.com/ 喜欢古风的童鞋…

几十个精选壁纸网站,配色网站,字体网站

文章目录 生活网址收藏壁纸Wallpaper Engine彼岸图网千叶网FoodiesfeedP站画师通(可以当做P站国内版)极简壁纸必应壁纸WallhavenwallroomwallpaperscraftPsiupuxa10WALLPAPERWallpapermaidenCgwallpapers堆糖Wallpaper AbyssWallhereAlphacoderH128壁纸 前端素材和UI配色网站中…

壁纸网站推荐(二)

电脑壁纸网站推荐&#xff08;二&#xff09; 1. Pexelx2. liveWallp&#xff08;视频壁纸&#xff09;3. 致美化4.pixobay5. 故宫壁纸6. 资源帝电脑壁纸7. WallHere8. 美图集9. Papers.co10. SimpleDesktops11. FILMGRAB12. MOVIEMANIA13. WALLPAPERMAIDEN14. Konachan.net15.…

找壁纸不用愁了:壁纸网站/APP/工具合集

苏生不惑第261篇原创文章&#xff0c;将本公众号设为星标&#xff0c;第一时间看最新文章。 之前分享过那些好用的无版权免费图片网站&#xff0c;今天分享些好看的壁纸网站和工具&#xff0c;在公众号后台回复 壁纸 获取软件。 wallhaven 这个知名壁纸网站应该不用多介绍了htt…

免费图片壁纸API

免费图片API 动漫(PC) https://www.dmoe.cc/random.php https://acg.toubiec.cn/random.php https://api.ixiaowai.cn/api/api.php https://api.ixiaowai.cn/mcapi/mcapi.php&#xff08;mc酱动漫&#xff09; https://api.ixiaowai.cn/gqapi/gqapi.php&#xff08;高清壁纸&am…

Vue3+TypeScript学习之旅---联想壁纸库

博客原文地址https://gitee.com/baymaxsjj 项目演示 网站演示&#xff1a;https://gitee.com/baymaxsjj 网站源码&#xff1a;https://gitee.com/baymaxsjj/by-vue-wallpaper 网站后端&#xff1a;本项目后端接口来自于联想电脑管家->软件商店->壁纸。推荐下载联想电脑…

三星w系列vip服务器,三星最贵奢华手机来了!土豪专属

原标题&#xff1a;三星最贵奢华手机来了&#xff01;土豪专属 IT之家11月8日消息 W系列一直是三星手机最特别的存在&#xff0c;虽然受众群体小众&#xff0c;销量也不足以撑起三星帝国庞大的野心&#xff0c;但三星仍是每年坚持不懈的推出新一代W系列手机。 心系天下系列是中…