Python 如何在没有django的情况下使用sorl缩略图?

Python 如何在没有django的情况下使用sorl缩略图?,python,django,sorl-thumbnail,Python,Django,Sorl Thumbnail,在我的例子中,我有机会生成图像缩略图,并在上传到管理员计算机上的服务器AmazonS3之前进行一些后处理。 我知道sorl会在生成缩略图之前检查缩略图是否存在,但使用了一种复杂的命名方案,所以我希望有一种方法可以直接从我的脚本访问sorl 官方文档没有提到单独使用sorl缩略图,有什么建议吗?我建议您查看sorl缩略图的源代码。实际上,所有sorl缩略图都是围绕PIL python映像库的包装器。虽然我相信你能找到一种方法,可能把sorl thumbnail从django中分离出来,但这将是非常

在我的例子中,我有机会生成图像缩略图,并在上传到管理员计算机上的服务器AmazonS3之前进行一些后处理。 我知道sorl会在生成缩略图之前检查缩略图是否存在,但使用了一种复杂的命名方案,所以我希望有一种方法可以直接从我的脚本访问sorl


官方文档没有提到单独使用sorl缩略图,有什么建议吗?

我建议您查看sorl缩略图的源代码。实际上,所有sorl缩略图都是围绕PIL python映像库的包装器。虽然我相信你能找到一种方法,可能把sorl thumbnail从django中分离出来,但这将是非常重要的。也就是说,如果您说将其设置为一个管理命令,并使用完整的django环境,那么您将能够使用sorl缩略图文档中记录的低级api

也就是说,您可能会更好地了解sorl缩略图如何与PIL接口,并以解耦的方式复制该部分代码,因为您将不得不再次使用PIL进行附加的后处理,而sorl缩略图无论如何都无法做到这一点

还请记住所有这些,我不确定您的意图是什么…这些都不是您可以设置为在Web服务器上运行的。您不能在连接到django服务器的客户机上运行python脚本,这是不可能的。然而,如果您只是将它分发给一些同事或其他人,那么生成一个python程序来生成带水印的缩略图是完全可能的


<>如果你真的想让武断的人访问你的网站,并通过网络接口将水印/拇指文件上传到你……那么你就要开始认真学习JavaScript了。

< P>除非你做了一些复杂的事情,否则我会考虑使用这种离线处理。对于缩放图像和合成徽标等简单任务,编写ImageMagick one liner更快更简单:

convert in.jpg -scale 200x200 logo.png -gravity SouthEast -composite out.jpg

而不是在PIL中实现同样的东西。

客户端python脚本?我想客户和客户之间可能会有一些混淆,您能详细说明一下吗server@Timmy,客户端指的是管理员的物理PC。我知道不在服务器上进行后处理似乎很奇怪,但在这种特殊情况下,它简化了很多事情。好的,所以你想运行一个独立的python脚本客户端来上传到服务器上——我想你是指浏览器客户端。我想在客户端运行独立的python脚本来生成缩略图,它们将在以后手动或通过单独的脚本上传。我知道如果拇指命名正确,即使它们没有在DB中列出,我也可以把它们捡起来。谢谢。我知道如何调整图像大小,真正的问题是sorl如何命名文件,所以我希望直接使用sorl,而不必深入代码。谢谢,我会尝试找出sorl中文件命名的工作原理。在客户端,我的意思是管理员有脚本并在他的计算机上运行,而不是在他的浏览器中。我编辑了这个问题,所以没有人会感到困惑。