Python正在吞噬这个世界!您会发现许多热情的Python程序员和同样多的批评者,但不可否认的是,Python在当今软件开发中是一个强大的、相关的、不断增长的力量。
Python只是一种语言,语言不能解决业务问题,如工作流、体系结构和物流;这些都取决于您,开发人员!您选择的包、实现的架构和遵循的策略都将影响Python项目的成功。让我们看一下使用Python将文件上传到云中的过程。我将讨论每个团队在实现文件上传和管理解决方案时所面临的一些注意事项,然后给出一个简洁的菜谱,让您可以使用Filestack的PythonSDK使用Python上传文件。
问题是:如何管理用户生成的上载?
你已经建立了你的MVP,所有的测试都通过了。你有能力通过HTML表单上传文件到你的网站上,这很容易!只需在表单提交上发布一个简单的帖子,您的服务器就能捕捉到用户抛出的任何内容。不过,这只是个开始-接下来是困难的部分。
确保用户在上传、转换和共享内容时有很好的体验,这意味着为他们提供可靠的、可恢复的、快速的上传。这意味着为他们提供裁剪、调整大小和调整上传所需的工具。这意味着将文件从一种格式转换为另一种格式。这当然意味着优化交付,这样他们就可以保存数据,并尽可能快地从功能强大的分布式CDN中获取最高质量的内容。
解决方案:使用PythonSDK
当一个项目能够将繁重的工作与业务逻辑分开时,每个人都会赢。您可以用一小群开发人员和一台时间机器从头开始构建所有东西,但既然您可以使用Filestack API,为什么要这样做呢?为什么直接调用API,在自己的代码中实现所有东西,而您可以在SDK中弹出并在一天内调用它呢?
获取SDK
使用PIP,运行以下命令:
PIP安装filestack-python
当文件自动为您加载时,您应该会看到进度条的良好显示:
一旦你有了Filestack PythonSDK安装后,只需将其放入您自己的Python脚本中,使用Filestack API键创建客户机实例,然后调用client.upload() 有一些参数。以如下方式导入:
从filstack导入客户端
那个客户帮你做所有的重活。这里有一个简单的方法可以让它发挥作用:
所需经费:
创建一个文件来测试您想要尝试的目录中的内容。我会叫我的‘upyougo.py’。为上传示例添加一个图像。我的漫画是xkcd和飞来飞去的毕多诺星的连环画。
from filestack import Client
client = Client(“APIKEY”)
params = {‘mimetype’: ‘image/png’}
new_filelink = client.upload(filepath=”python.png”, params=params)
print(new_filelink.url)
Image title
确保用实际的API键替换“每个Key”。
通过将文件名作为命令行中的参数传递给Python,运行此操作,如下所示:
python upyougo.py
就这样使用这个简单的代码,我们可以使用Python成功地将文件从本地机器上传到Filestack应用程序。上传完成后,您应该会看到一个URL输出到您的终端。复制并粘贴到您的浏览器查看,并尝试一些我们的转换URL,以进一步发挥它!
But, Docker...
好的,这里有一种在任何机器上尝试这种方法的非常快的方法:如果您在系统上安装了Docker,您可以使用下面的命令运行上面所示的示例上载:
docker run -it –rm -e APIKEY=MYAPIKEYHERE filestack/python:example
这只是一个小小的窥探,您可以使用Filestack的JavaScriptSDK在服务器端使用节点。