python自动下载太平洋电脑网上的壁纸

本文介绍了一个使用Python编写的简单脚本,该脚本能够自动从太平洋电脑网下载壁纸。通过解析网页内容并处理可能存在的压缩数据,脚本能够获取图片链接并下载到本地指定文件夹。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直接上代码吧,比较简单:

#-*- encoding:utf-8  -*-
'''
自动下载壁纸,太平洋电脑网壁纸,http://wallpaper.pconline.com.cn
By garfieldtom,2012
python ver:python 3

感谢   枫叶饭团  提供解答,软件取回内容有压缩
'''

import re,urllib.request
import gzip

#获得页面内容
def downwallpapers(url):
    urlcontent=geturlcontent(url)
    imglist=getimglist(urlcontent)
    for img in imglist:
        downimg(img)
    

def geturlcontent(url):
    #返回页面内容
    doc = urllib.request.urlopen(url).read()
    #解码,有些是压缩的,或者说有时是压缩的,随机??没搞懂
    try:
        html=gzip.decompress(doc).decode("gbk")
    except:
        html=doc.decode("gbk")
    return html

#下载图片
def downimg(url):
    imgdir ='/home/xxh/图片/wallpapers/'
    filename = imgdir + url.split("/")[-1]
    print("准备下载................")
    print("url:"+url)
    print("filename:"+filename)
    urllib.request.urlretrieve(url, filename)
    
#取图片链接
def getimglist(doc):
    #取照图图片地址
    regImg =  '<td class="show_mainbox"><img src=\'(.*?)\''
    imglist = re.findall(regImg,doc)
    print(imglist)
    return imglist
    

if __name__=="__main__":
    for i in range(1,13):
        print('开始下载第%d个....' % i)
        #打开http://wallpaper.pconline.com.cn,选择一个系列,然后打开一个图片,打开原图,地址就是类似下面的样子
        #然后是系列的序号,总个数参考网页,其实可以从网页上抓取,偷懒了  :-)
        url="http://wallpaper.pconline.com.cn/picsource/13307_"+str(i)+".html"
        downwallpapers(url)

 


 

 

再次感谢   枫叶饭团  提供解答,软件取回内容有压缩 !

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值