PIL保存时更改文件名

1 投票
1 回答
562 浏览
提问于 2025-04-16 23:35

当我使用PIL中的保存方法来保存文件时,文件名是我提供的正确名称,但点击文件名时,显示的路径却不一样。(抱歉,我的解释不太清楚)。

举个例子,如果你去这个链接:http://shopperspoll.webfactional.com/media/images/emailTemplate/mergedImages/,你会看到有一张图片,名字是“7962716_41tlK2uT%2BSL.SL75.png”。但是当你点击这张图片时,浏览器显示的文件名变成了“7962716_41tlK2uT%252BSL.SL75.png”,多了一个“52”。我使用的是image.save(pathName)来保存这张图片。

谢谢!

1 个回答

4

因为 7962716_41tlK2uT%2BSL.SL75.png 是一个有效的文件名,所以它被保存在你的文件系统中。浏览器会对文件名进行编码,所以 7962716_41tlK2uT%2BSL.SL75.png 变成了 7962716_41tlK2uT%252BSL.SL75.png;文件名中的百分号变成了 %25

所以,PIL(Python Imaging Library)并没有改变你的文件名,是你的浏览器对实际的文件名进行了处理。就是这么简单!

给定一个带有参数 q 的查询,你会得到:

>>>urllib.urlencode({'q':'7962716_41tlK2uT%2BSL.SL75.png'}) == "q=7962716_41tlK2uT%252BSL.SL75.png"
True

撰写回答