以稿定设计网站为例:
网页 —> 鼠标右键 —> 检查 【点击network,查看页面请求】
找到数据加载的api的方法,将页面下滑到底部,点击第二页,查找加载列表的接口,此网站的接口是【https://www.gaoding.com/api/v3/cp/template-centers/v2/recommend-templates】
点击当前接口,点击payload,就能找到接口的请求参数!
点击当前接口,点击headers,就能找到接口的请求头!
import requests,json,time,random,os
url = 'https://www.gaoding.com/api/v3/cp/template-centers/v2/recommend-templates'
data = {
"page_num": 1,
"page_size": 50,
"styles": [],
"colors": [],
"filter_nodes": [
{
"type": 1,
"id": 4834126,
"children": [
{
"id": 4834127,
"type": 2,
"children": [
{
"agg_filter_id": 4834127,
"value": "1000002024"
}
]
},
{
"id": 4834128,
"type": 1
}
]
}
]
}
headers = {
"content-type": "application/json;charset=UTF-8",
"x-channel-id": "8"
}
"""创建存放海报的文件夹"""
def create_folder(path):
if not os.path.exists(path):
os.mkdir(path)
"""获取海报列表"""
def get_poster_list():
return requests.post(url, data=json.dumps(data1), headers=headers)
"""保存海报"""
def save_poster(url):
request = requests.get(url)
with open(f'./images/{int(round(time.time() * 1000))}-{random.randint(100,1000)}-poster.png', 'wb') as img:
img.write(request.content)
"""下载海报"""
def download_poster():
create_folder('./images')
res = get_poster_list()
for item in json.loads(res.text):
save_poster(item.get("preview").get("url"))
import requests,json,time,random,os
url = 'https://www.gaoding.com/api/v3/cp/template-centers/v2/recommend-templates'
data = {
"page_num": 1,
"page_size": 500,
"styles": [],
"colors": [],
"filter_nodes": [
{
"type": 1,
"id": 4834126,
"children": [
{
"id": 4834127,
"type": 2,
"children": [
{
"agg_filter_id": 4834127,
"value": "1000002024"
}
]
},
{
"id": 4834128,
"type": 1
}
]
}
]
}
headers = {
"content-type": "application/json;charset=UTF-8",
"x-channel-id": "8"
}
"""创建存放海报的文件夹"""
def create_folder(path):
if not os.path.exists(path):
os.mkdir(path)
"""获取海报列表"""
def get_poster_list():
return requests.post(url, data=json.dumps(data), headers=headers)
"""保存海报"""
def save_poster(url):
request = requests.get(url)
with open(f'./images/{int(round(time.time() * 1000))}-{random.randint(100,1000)}-poster.png', 'wb') as img:
img.write(request.content)
"""下载海报"""
def download_poster():
create_folder('./images')
res = get_poster_list()
for item in json.loads(res.text):
save_poster(item.get("preview").get("url"))
if __name__ == "__main__":
download_poster()