Python re库爬取阴阳师官网高清壁纸

壁纸官方网址:
https://yys.163.com/media/picture.html
导库

import requests
import re
from urllib import error
import urllib.request

request解析网址得到了html代码

url = 'https://yys.163.com/media/picture.html'
data = requests.get(url)

接下来用正则匹配:
这里这里在这里插入图片描述
这里我们看到一共有四种分辨率的壁纸我们取最分辨率最高的壁纸,观察这些网址之间的共同之处进行正则匹配

regex = re.compile('.*?href="(.*?)2732x2048.jpg"')
urls=regex.findall(data.text)

正则表达式嘛,对于小白的我来说.*?就完事了,哈哈。
通过这段代码我们得到了壁纸网址的列表(其实不是完整的网址,需要加上 2732x2048.jpg")
获取完网址之后就开始下载图片啦!

''' 封装成函数方便使用'''
def download(url,index):
    try:
        response = urllib.request.urlopen(url)
        yys = response.read()
        with open('壁纸' + str(index) + '.jpg', 'wb')as f:
            f.write(yys)
    except error.HTTPError as e:
        print("图片"+str(index)+"不存在")
    

因为有些图片的网址请求后会出现404NOT FOUND,可能是网站服务器那边挂载的资源出了点问题。所以加了个异常处理。

i=0
for lis in urls:
    li = lis+'2732x2048.jpg'
    i+=1
    download(li,i)

下载完成,以后就可以看到喜欢的壁纸啦!

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值