Synology nas icloudpd KeyError: ‘dsInfo‘解决方案

无docker的群晖丐版用户们

版本:icloudpd1.7.2(GitHub - icloud-photos-downloader/icloud_photos_downloader: A command-line tool to download photos from iCloud

问题:

Traceback (most recent call last):
  File "/usr/local/bin/icloudpd", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.6/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/icloudpd/base.py", line 260, in main
    client_id=os.environ.get("CLIENT_ID"),
  File "/usr/local/lib/python3.6/site-packages/icloudpd/authentication.py", line 32, in authenticate
    client_id=client_id)
  File "/usr/local/lib/python3.6/site-packages/pyicloud_ipd/base.py", line 193, in __init__
    self.authenticate()
  File "/usr/local/lib/python3.6/site-packages/pyicloud_ipd/base.py", line 219, in authenticate
    self.params.update({'dsid': resp['dsInfo']['dsid']})
KeyError: 'dsInfo'

描述:本来用icloudpd同步照片同步的好好的,突然收到邮件报错了(见上图)...发现是appleid迁移到中国区的问题,家里几部设备有的"迁移"了有的没"迁移",于是就在原版1.7.2icloudpd的基础上加了个参数"域名后缀",需要的话加上这个参数,不需要的话可以不加。

方案一:给苹果打电话,给我迁回去!不过活儿干的挺慢的。

方案二:改代码,增加配置参数解决不同appleid不同区问题。

SynologyicloudpddsInfoappleId中国区报错-Python文档类资源-CSDN下载​版本:icloudpd1.7.2(GitHub-icloud-photos-download更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/VincentLee_/85051664

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用Java的SMBJ库连接到Synology NAS并实现文件上传。以下是一个简单的示例代码: ```java import com.hierynomus.mssmb2.SMB2Dialect; import com.hierynomus.smbj.SMBClient; import com.hierynomus.smbj.auth.AuthenticationContext; import com.hierynomus.smbj.common.SmbPath; import com.hierynomus.smbj.connection.Connection; import com.hierynomus.smbj.session.Session; import com.hierynomus.smbj.share.DiskShare; import com.hierynomus.smbj.share.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; public class SynologyNASUploader { public static void main(String[] args) throws IOException { String serverName = "your-synology-nas"; String shareName = "your-share-name"; String username = "your-username"; String password = "your-password"; String filePath = "path-to-your-file-on-local-machine"; String fileName = "your-file-name"; SMBClient client = new SMBClient(SMB2Dialect.SMB_2_1); Connection connection = client.connect(serverName); AuthenticationContext auth = new AuthenticationContext(username, password.toCharArray(), ""); Session session = connection.authenticate(auth); DiskShare share = (DiskShare) session.connectShare(shareName); SmbPath smbPath = new SmbPath(share.getDiskId(), fileName); File file = share.openFile(smbPath, new HashSet<>(Arrays.asList(AccessMask.GENERIC_ALL)), null, null, 0, 0); InputStream inputStream = new FileInputStream(filePath); file.write(inputStream); file.close(); share.close(); session.close(); connection.close(); client.close(); } } ``` 请将上述代码中的 `your-synology-nas`、`your-share-name`、`your-username`、`your-password`、`path-to-your-file-on-local-machine` 和 `your-file-name` 替换为你的 Synology NAS 的相关信息和本地文件的路径和名称。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值