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)

接下来用正则匹配:
这里这里Python re库爬取阴阳师官网高清壁纸_第1张图片
这里我们看到一共有四种分辨率的壁纸我们取最分辨率最高的壁纸,观察这些网址之间的共同之处进行正则匹配

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)

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

你可能感兴趣的:(python爬虫,小白,阴阳师)