用于wetransfer公共api的python sdk

wetransfer的Python项目详细描述


wetransfer python sdk

用于wetransfer的公共api的python sdk

安装

使用pypi安装最新的稳定版本:

pip install wetransfer

签出存储库并在repo的根目录中使用pip将最新版本安装到您的环境中:

pip install .

用法

在开始之前,请确保从Developers Portal获取了一个api密钥。

作为第一步,您需要创建一个客户并填写您的董事会名称:

fromwetransfer.clientimportWTApiClientkwargs={"key":"<my-very-personal-api-key>"}wt_client=WTApiClient(**kwargs)

拥有客户端实例后,您需要授权使用此客户端:

wt_client.authorize()

如果授权成功,您应该能够创建新的空传输

transfer=wt_client.create_transfer(transfer_name="My very first Transfer")

之后,您应该可以向其中添加项目

fromwetransfer.itemsimportFilef1=File("~/test.txt")f2=File("~/test2.txt")transfer.add_items([f1,f2])print(transfer)

调用add_items方法后,应启动上载过程。它一回来你就应该 能够查看此传输的详细信息并访问可供下载的传输的URL。

完整的代码片段如下:

importsysfromwetransfer.itemsimportFile,Linkfromwetransfer.clientimportWTApiClientkwargs={"key":"<my-very-personal-api-key>"}wt_client=WTApiClient(**kwargs)ifnotwt_client.authorize():sys.exit(0)transfer=wt_client.create_transfer(transfer_name="My very first Transfer")f1=File("./test.txt")l1=Link("https://wetransfer.com/","WeTransfer Website")transfer.add_items([f1,l1])print(transfer)

如果你运行它,你会看到如下内容:

Transfer with id: <id>, can be found in short url: <str>, with following items: ['Transfer item, file type, with size 10, name test.txt, and local path /Users/bla/test.txt, has 1 multi parts']

辅助方法

如果只需要上载文件,可以跳过File对象的创建,并使用一个助手函数,该函数允许您将路径列表指定为字符串,并将为您添加给定的Transfer

transfer.add_files(["file1.txt","file2.txt"])

相似的URL存在方法:

transfer.add_links(["https://wetransfer.com/","http://www.visitgreece.gr/"])

调试

如果需要调试或调查奇怪的行为,可以通过启用专用的python记录器来启用此sdk的日志

importlogginglogging.basicConfig()logging.getLogger("wetransfer-python-sdk").setLevel(logging.DEBUG)kwargs={"key":"<my-very-personal-api-key>"}wt=WTApiClient(**kwargs)...

根据需要的详细程度,可以相应地设置严重性级别。

贡献

dedicated部分。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何从Java调用AmazonAWSAPI?   Java中的渗流   java在dao端使用逻辑不是一个好的实践吗?   java Swing绘制网格。韦尔德结果   java如何设置PlusOneButton对话框的共享选项的默认文本   java如何在firebase存储中管理多个上载/下载?   java Wicket在多个位置显示相同的文本   java使用j2me通过蓝牙从一个手机向另一个手机发送短信   java为什么不让DialogWait框自动关闭?   java Visual Studio代码JDBC访问Derby数据库   在java中如何根据日期从文件夹中获取文件   java如何从数据库加载多个数据   java匿名类和同步以及“this”   java无法使用Selenium上载文件   java多线程JAXR调用parallelStream还是Futures?   获取要编译的Netbeans Java程序   java检查二叉树是否为有效BST的函数中的“min”和“max”是什么?   java有人能解释为什么这段代码只在构造函数中工作吗?   java如何将多种类型的用户重定向到各自的活动?