吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3937|回复: 19
收起左侧

[Python 转载] 爬取“精美”的动漫壁纸

  [复制链接]
huanye 发表于 2020-4-14 21:33
本帖最后由 huanye 于 2020-4-14 21:55 编辑

介绍

爬取的是网址:www.win4000.com
需要的库:BeautifulSoup time requests re
工具       :visual studio code
大佬们勿喷(新手上路)
说明

需要修改第8行
修改为True就是爬取全部
修改为False就是爬取指定数量(第9行可以修改)

还要修改第第10行保存路径 注意:在文件夹后需要有/的
成果


image.png
image.png
代码


[Python] 纯文本查看 复制代码
import requests,re,time
from  bs4 import  BeautifulSoup
'''
作者是帅气逼人的钢铁直男
'''
s=time.clock()
pp=1#图片数量
all=False #如果需要全部爬取就改为True 需要爬取指定数量就改为False
end=30 #需要图片多少张
path='C:\\Users\\win10\\Desktop\\python\\爬取桌面壁纸图\\壁纸\\'#修改图片保存路径
def danz(id):#定义单页爬取函数
    page=1
    while True:#无限循环
        global pp#在函数内修改外部变量需要声明
        html = requests.get("http://www.win4000.com/wallpaper_detail_%s_%s.html"%(id,page))#获取单章网址内容
        if html.status_code==404:#如果是404证明爬取完了
            break#退出循环
        jpg = BeautifulSoup(html.text,'lxml')#解析
        jpg1=jpg.find('img',class_='pic-large')['src']#调用
        jpg = requests.get(jpg1).content#访问jpg链接,因为是二进制,所以需要.content
        with open("%s%s.jpg"%(path,pp),'wb') as f:#保存jpg
            f.write(jpg)
        print("第%s张图片下载完成"%pp)
        if int(pp)==end and all==False:#爬取到指定页数并且不是爬取所有就结束脚本
            e=time.clock()#获取时间
            exit("完成耗时%s秒"%(e-s))
        page=page+1#自增
        pp=pp+1#自增
def m(url):
    html=requests.get(url)#获取网页内容
    a=re.findall(r'http://www.win4000.com/wallpaper_detail_(.+?).html',html.text)#获取单章id
    for aa in a:#阅遍字典
        danz(aa)#使用单章jpg保存函数
page=1#这个和函数是不一样的 函数内变量不影响外部变量除非global
for i in range(5):#循环五次 因为他只有五页列表
    m("http://www.win4000.com/zt/dongman_%s.html"%page)#使用函数
    page=page+1#自增
#如果是全部图片保存就打印
e=time.clock()#计算时间
print("完成耗时%s秒"%(e-s))

最后

给点免费评分如何?
爬取了一千多张图片,已经保存到网盘了,总共1.2G
链接:https://pan.baidu.com/s/1-3ApF7A4FQe2U2bTVe5hDA
提取码:nqm2

免费评分

参与人数 2吾爱币 +2 收起 理由
我是一个外星人 + 1 谢谢@Thanks!
app740520 + 1 用心讨论,共获提升!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| huanye 发表于 2020-4-15 07:16
taozididi 发表于 2020-4-14 23:51
请问 我改为true 以后 好像基本上爬的都是动漫那个的   整站怎么改呀

改true相当于爬取全部动漫壁纸,不是整站的
 楼主| huanye 发表于 2020-4-14 22:23
taozididi 发表于 2020-4-14 22:14
1000多张是站内全部了吗

不是哦,我只是爬取了动漫那一部分的,你想的话,可以修改一下代码就可以了
hill_king 发表于 2020-4-14 21:45
uhxdDGjohs 发表于 2020-4-14 21:46
会不会爬崩
Seven1314pp 发表于 2020-4-14 21:47
亲,啥都没看到~~~~~~
夹竹桃 发表于 2020-4-14 21:47
成果----什么也冒得
xz1997 发表于 2020-4-14 21:50
看了个寂寞。
初见悲风 发表于 2020-4-14 21:51
谢谢楼主
 楼主| huanye 发表于 2020-4-14 21:51

抱歉,刚才排版
 楼主| huanye 发表于 2020-4-14 21:55

抱歉,刚才排版
深爱我的女孩 发表于 2020-4-14 21:56
壁纸谢分享,已收下!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 21:47

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表