我正在构建一个应用程序来自动触发与用户共享的Dropbox文件的下载(共享文件/文件夹链接).这是直截了当地实现对Dropbox的链接文件,概述这里.
不幸的是,这对共享文件夹不起作用.任何人都有我的建议
目前我可以访问网址并进行屏幕抓取以尝试获取内容列表,但链接的Dropbox博客条目中描述的解决方案的优势在于不需要抓取,因此它更加可靠和高效.
我正在使用RQ,我有一个failed包含数千个项目的队列,另一个test队列我创建了一段时间用于测试现在是空的和未使用的.我想知道如何从failed队列中删除所有作业,并test完全删除队列?
我正在构建一个应用程序来自动触发与用户下载文件共享.例如,这是直截了当地实现对Dropbox的链接,概述这里.
我正在尝试为Google云端硬盘链接实现相同的功能,但遇到了困难.现在,应用程序获取链接的第三部分(文件ID)并将其附加到"https://docs.google.com/uc?export=download&id=".但这似乎不可靠,特别是因为我找到的共享文件至少有3种不同的链接格式(https://drive.google.com/file/d/xyz,https://docs.google.com/ document/d/xyz等).有没有人知道从Google云端硬盘共享链接中获取文件的一般适用且可靠的方法,例如上面针对Dropbox概述的流程?
最后,我们有Oauth访问用户云端硬盘帐户.对于与他们共享的文件,其共享设置设置为"私人"(或"网上公共"或"任何有链接的人"以外的任何内容),我一直在研究(收效甚微)是否可以下载代表Oauth认证用户的那些文件 - 有没有人对此有任何见解?
任何见解/建议将不胜感激.
[更新]可以从用户云端硬盘帐户下载"私有"共享文件 - 它们会自动添加到"与我共享"文件夹中,因此只需要一种可靠的方法来获取文件ID.
我使用的是通过SFTP上传文件的paramiko用sftp.put(localFile, remoteFile).如果需要,我首先制作必要的目录
makeCommand = 'mkdir -p "' + remotePath + '"'
ssh.exec_command(makeCommand)
Run Code Online (Sandbox Code Playgroud)
这有时是有效的,但我偶尔会收到以下错误:
sftp.put(localFile, remoteFile)
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 565, in put
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 245, in open
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 635, in _request
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 682, in _read_response
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 708, in _convert_status
IOError: [Errno 2] No such file
Run Code Online (Sandbox Code Playgroud)
尽管本地文件肯定存在(并且localFile是正确的路径)并且建立了远程路径.这里和这里有一个类似问题的讨论,但那里提到的任何一点都没有帮助我.我的服务器支持该df -hi命令.有没有人对此或任何可能的解决方案有任何建议?
编辑
在下面的建议后,我尝试更改工作目录,sftp.chdir(remoteDirectory)但此调用产生了与上面完全相同的错误.所以这似乎不仅仅是一个上传问题.有任何想法吗?
python ×4
dropbox ×1
dropbox-api ×1
google-docs ×1
onedrive ×1
paramiko ×1
python-2.7 ×1
python-rq ×1
redis ×1
sftp ×1
webhooks ×1