好看的壁纸下载需要vip, 不一招教你批量免费下载

news/2025/2/11 2:32:55/

今天逛壁纸网站,看见一张好看的小姐姐壁纸,准备保存下来,好家伙竟然要钱,既然这样那就不好意思啦,我已经不满足一张了,全部都是我的。

 既然如此,我们就来利用爬虫把图片批量下载下来。

第一步:分析数据来源

网站链接:https://www.tooopen.com/img/88_879_1_1.aspx

进入首页点开开发者工具(f12)

数据找到后,我们开始写代码。

第二步:获取数据

        1.导入requests模块和数据解析模块:

        import requests

        import parsel

        2.获取数据并解析数据

url = f"https://www.tooopen.com/img/88_879_1_1.aspx"
response = requests.get(url=url)
selector = parsel.Selector(response.text)

         3.通过css选择器定位数据

         首先在开发者工具中定位图片数据和标题,在a标签下的href和title属性里面,得到各个壁纸链接

img_url = selector.css('a.pic::attr(href)').getall()
title = selector.css('a.pic::attr(title)').getall()

         得到壁纸链接组成的列表后遍历列表,再进行解析,得到每张图片的链接

 for link, title in zip(img_url, title):# print(link, title)image = requests.get(url=link).textselector = parsel.Selector(image)url = selector.css('.det-pic img::attr(src)').getall()

 遍历每张图片链接,进行数据解析,并转换成二进制数据进行保存

url = requests.get(url=img, headers=headers).content
# print(url)
with open(f'img1/{title}.jpg', mode='ab') as f:f.write(url)

然后来看效果:

第一页的数据就爬下来了,然后爬取多页面数据,对每页链接进行分析

每页数据都是通过后面数字进行跳转,然后在代码前面加上for循环,对url进行修改

url = f"https://www.tooopen.com/img/88_879_1_{page}.aspx"

 完整代码如下:

import requests
import parselfor page in range(1, 3):url = f"https://www.tooopen.com/img/88_879_1_{page}.aspx"response = requests.get(url=url)# print(response.text)想需要更多有趣的python代码请V:oudashuai1 selector = parsel.Selector(response.text)img_url = selector.css('a.pic::attr(href)').getall()# print(img_url)title = selector.css('a.pic::attr(title)').getall()# print(title)for link, title in zip(img_url, title):# print(link, title)image = requests.get(url=link).textselector = parsel.Selector(image)url = selector.css('.det-pic img::attr(src)').getall()# print(url)for img in url:想需要更多有趣的python代码请V:oudashuai1 # print(img)headers = {'referer': f'https://www.tooopen.com/img/88_879_1_{page}.aspx','cookie': 'ASP.NET_SessionId=a5d09d0c-58a4-4642-a120-734ca473c542; Hm_lvt_d3ac2f8840ead98242d6205eeff29cb4=1658921995; history=2403843,2406976,2407361,2407473; RefreshFilter=http://www.tooopen.com/ajax/gethistory?callback=jQuery18305605885723622803_1658930997557&_=1658930997665; Hm_lpvt_d3ac2f8840ead98242d6205eeff29cb4=1658930998','user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134 Safari/537.36 Edg/103.0.1264.71'}url = requests.get(url=img, headers=headers).content# print(url)with open(f'img1/{title}.jpg', mode='ab') as f:f.write(url)

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

万水千山总是情,点个【关注】行不行


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

相关文章

联想壁纸下载

http://download.pchome.net/wallpaper/info-350-2-1.html

Android 12壁纸,Android12壁纸下载-Android12壁纸高清壁纸大全 v1.0-友情手机站

Android12壁纸,首个开发者预览版已经推出了,不少用户们都很期待新的系统会有那些改变,今天就上线了7张安卓12高清壁纸,大家可以直接下载保存到手机上,随着新的系统更新,对功能也进行的更新升级,…

DELL各计算机系列原厂壁纸下载方法

创建日期:2019.10.06 预装的操作系统中就是要原厂壁纸。如果你重新安装操作系统,觉得原厂壁纸好,但又无法下载。该怎么办呢? 【解决方案】 就拿我这台Dell Inspiron为例子。 1.打开dell官方网站。 2.单击“支持”选项卡上的“…

华为鸿蒙太空人壁纸,华为太空人动态壁纸下载-华为太空人动态壁纸图片高清版-丫丫安卓网...

华为太空人动态壁纸app是一款最近在抖音上超火的动态壁纸软件哦,平台内最热门的太空人动态壁纸也为大家整理出来了哦,大家有喜欢的都可以免费拿去使用,而且还是动态的,使用到手机还是很好看的哦,而且平台内所有的壁纸都…

Linux安装VNC(Linux桌面版远程)

一、Linux安装VNC服务 适用于CentOS7 #检查系统没有装GUI界面 rpm -qa | grep gnomeyum -y groupinstall "X Window System" yum -y groupinstall "GNOME Desktop"#安装VNC yum install tigervnc tigervnc-server -y检查开机运行级别 systemctl get-defa…

vue使用el-table实现懒加载树. 解决新增、删除、修改之后数节点不刷新问题

问题: 菜单管理页面,打开耗时7.8秒 有2200多个菜单, 请求接口返回700k的数据, 领导说返回的数据量太大了, 让改造下. 过程: 尝试一: 想着能少改就少改的原则. 700k你嫌大, 那咱就压缩下数据传输. 修改完之后接口返回数据size60多k, 但是管理菜单打开的时间只优化了一点. 这…

1079 三角形

Description 著名的数学家毕达哥拉斯可能从来都不曾想过有人居然会问他这样的一个问题:给出一个整数,存在多少个直角三角形, 它的某一条边的长度等于这个整数,而且其他边的长度也是整数。既然毕达哥拉斯不可能预见到有计算机的出…

磁带机大概使用

HP StorageWorks Ultrium 驱动器的默认 SCSI ID 为 3。SCSI 总线上的每个设备都必须有一个唯一的 SCSI ID 号。可以为驱动器分配 0 到 15 之间的任何未使用的 ID。不要使用 SCSI ID 7,它是为 SCSI 控制器保留的。SCSI ID 0 通常分配给引导磁盘,除非磁带驱…