附上代碼
# !usr/bin/env python
# -*- coding:utf-8 -*-
"""
author: Tceo1
time : 2020/1/22 15:09:25
下載2560*1080的壁紙
下載地址:https://2560x1080.com/
"""
import requests
import re
# 1代表第一頁
url = "https://2560x1080.com/page/1/"
response = requests.get(url)
# href="https://2560x1080.com/tokyo-blue-2560x1080-wallpaper/" title="Tokyo Blue (2560×1080 Wallpaper)">
# 分組第一個是得到外層的url前半部分,后面的分組是得到圖片名稱
regStr = r'href="(.*?)2560x1080-wallpaper/" title="(.*) \('
# 拿到首頁列表所有圖片的URL
allImageUrl = re.findall(regStr, response.text)
for i in allImageUrl:
# 拼湊列表中每張圖片的url:訪問后可查看到大圖
listImageUrl = i[0] + "2560x1080-wallpaper/"
imageName = i[1]
rsp = requests.get(listImageUrl)
# <form action="https://2560x1080.com/wp-content/uploads/2019/03/tokyo-blue-2560x1080.jpg" method="get">
reg2Str = r'<form action="(.*?)"'
# 拿到高清大圖的url 2560*1080
imageUrl = re.findall(reg2Str, rsp.text)[0]
print(imageUrl)
# 拿到圖片后綴名
imageType = imageUrl[-4:]
print(imageType)
# 請求圖片url返回二進制文件
imageContent = requests.get(imageUrl).content
# 圖片保存路徑
savePath = r'/home/ty/圖片/{0}{1}'.format(imageName, imageType)
# 寫入二進制內容到對應文件
with open(savePath, 'wb') as f:
f.write(imageContent)
效果圖
