我正在使用 Rclone_python (https://pypi.org/project/rclone-python/) 为我的服务器创建一些基本的备份脚本。
在我的一个脚本中,在客户端和服务器上设置并正确配置 rclone 后,只有运行此脚本的服务器出现问题。 rclone 配置都是有效的,并且是相同的,使用相同的访问密钥和一切。 rclone 在具有配置的服务器上工作,只是在 python 中不起作用。
我收到的错误是:
Traceback (most recent call last):
File "/root/rclone-backup-filechecker-python/main.py", line 145, in <module>
main()
File "/root/rclone-backup-filechecker-python/main.py", line 43, in main
dict_of_remote = get_hashes_from_files_remote(remote_path)
File "/root/rclone-backup-filechecker-python/main.py", line 53, in get_hashes_from_files_remote
result = rclone.hash(HashTypes.md5, remote_path)
File "/usr/local/lib/python3.10/dist-packages/rclone_python/rclone.py", line 24, in wrapper
return func(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/rclone_python/rclone.py", line 507, in hash
value, key = l.split()
ValueError: too many values to unpack (expected 2)
我的代码位于:https://gitlab.atfdev.co.uk/alicethefemme/rclone-backup-filechecker-python如果它有助于识别错误。
进一步检查,包中的rlcone.py文件有错误。
value, key = l.split()
这是在此之前工作的,并且在跟踪它想要拆分的变量时,错误并不总是一致的,我的远程上的某些文件只是偶尔引发错误。知道为什么会这样吗?
找出了正在使用的包的问题。它正在进行拆分,没有考虑到一些名称中使用空格的目录。在代码中添加 maxsplit=1 可确保它只是从此代码返回的哈希值和文件名。将在 GitHub 上为其制作一个 PR。感谢您的帮助!!