python - PIL ValueError:使用 alpha_composite 将透明图像绘制到另一个图像上时图像不匹配
问题描述
我正在制作一个 Python 脚本,它从 API 获取 Fortnite 商品商店,保存所有需要的信息,然后将商店中商品的图像绘制到图像上,但是我得到一个 ValueError:图像不匹配。所有图像都具有相同的分辨率并且都是 PNG 格式,但是 PIL 文档并没有向我解释太多。
# Importing JSON handling library for parsing GET request using requests library
import json
import requests
from PIL import Image
from io import BytesIO
# Creating blank lists & variables for later use
featured_list = []
daily_list = []
inc = 0
# API Endpoint
url = "https://fnbr.co/api/shop"
# API key
key = "ee9f93b4-2a91-4681-96b7-3f9485c9b14c" # key is usually here
# Defining Parameters
headers = {"x-api-key":key}
# Sending GET request
req = requests.get(url = url, headers = headers)
# Converting request data into JSON format
info = req.json()
# Finds appropriate pieces of data for Featured Item Shop
info = info['data']['featured']
for x in info:
featured_name = x['name']
featured_rarity = x['rarity']
featured_icon_url = x['images']['icon']
print(featured_name, featured_rarity, featured_icon_url)
if featured_rarity == "marvel":
imgpath = "/home/pi/Desktop/Item Shop/Rarity/Marvel.png"
bg = Image.open(imgpath)
response = requests.get(featured_icon_url)
f_icon = Image.open(BytesIO(response.content))
final1 = Image.new("RGBA", bg.size)
final1 = Image.alpha_composite(final1, bg)
final1 = Image.alpha_composite(final1, f_icon)
final1.save("final{}.png".format(inc))
inc += 1
else:
break
# Converts request data into JSON format again to access Daily Item Shop
info = req.json()
# Finds appropriate pieces of data for Daily Item Shop
info = info['data']['daily']
for y in info:
daily_name = y['name']
daily_rarity = y['rarity']
daily_icon_url = y['images']['icon']
print(daily_name, daily_rarity, daily_icon_url)
我得到的错误:
Traceback (most recent call last):
File "/home/pi/Desktop/Item Shop/bot.py", line 45, in <module>
final1 = Image.alpha_composite(final1, f_icon)
File "/home/pi/.local/lib/python3.8/site-packages/PIL/Image.py", line 2837, in alpha_composite
return im1._new(core.alpha_composite(im1.im, im2.im))
ValueError: images do not match
任何帮助表示赞赏!
解决方案
推荐阅读
- daml - 在快速入门指南中运行 Maven 时遇到问题
- linux - 获取 bash 中最后一个 grep 匹配的行
- r - “支配树的根顶点 ID 无效”在 IGraph 包中使用 st_cuts 时出错
- mysql - MySQL错误1194和错误145有什么区别
- typo3 - TYPO3 TCA 默认文本多行/文本区域
- java - 从 Java 访问 Pervasive/Btrieve DB(DDF + DAT 文件)
- sql-server - SSRS 报告中定义的表达式显示#ERROR
- windows - 如何为文件操作设置 Echo 开/关
- tensorflow - 有没有办法设置 per_process_gpu_memory_fraction tensorflow.js (.JS!)?
- python - 无法将字符串转换为浮点数 - 将 Pandas 和 Numpy 用于 SVM 分类器