我正在制作一个Python脚本,将我的音乐文件夹中的mp3文件上传到Dropbox,但我无法弄清楚如何这样做。我使用的是Dropbox API,这是我的代码
import dropbox
dbx = dropbox.Dropbox('*******')
dbx.users_get_current_account()
f = open('Channa Mereya.mp3', 'rb')
dbx.files_upload(bytes(f.read()), 'Channa Mereya.mp3')
但我收到了错误
dropbox.stone_validators.ValidationError: 'Channa Mereya.mp3' did not match pattern '(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)'
我对正则表达式模式了解不多。
另外,在阅读API文档时,files_upload
将第一个参数作为字节,我不知道为什么需要字节。
我也尝试过传递mp3文件的路径而不是打开并传递文件,如
dbx.files_upload("/home/username/python projects/Channa Mereya.mp3", 'Channa Mereya.mp3')
这里Channa Mereya.mp3
是一个存储在同一目录下的mp3文件
脚本
答案 0 :(得分:0)
在Dropbox API v2中指定要上传到的文件路径时,路径应该有一个前导"/"
来标识root。因此,files_upload
的第二个参数应该看起来像'/Channa Mereya.mp3'
。
错误表明您的路径值'Channa Mereya.mp3'
与允许的模式不匹配,即它没有该前导斜杠。