我对 Twisted 还比较陌生,我计划使用它来创建一个文件下载器。它将接受一个文件 URL 和多个部分来下载该文件。
我的想法是将文件分成用户指定的几个部分,并通过延迟下载每个部分,完成后,所有部分都将被组装。
但是我是否需要为每个要下载的文件指定一个协议(protocol),并让每个协议(protocol)调度一个延迟来下载每个文件的 block ?
是否有一个扭曲的组件来读取具有查找的远程文件?我真的不知道从哪里开始。
最佳答案
如果您提到的 URL 暗示所使用的协议(protocol)是 HTTP(我希望是 HTTP 1.1;-),那么您可以使用twisted 相对较新的 HTTP 1.1 客户端(已详细讨论 here ,并且从以下事实来看:该问题在 9 个月前被标记为已修复(我假设客户端终于进入了——我还没有检查过),使用 HTTP 1.1 的 range requests获取文件的“切片”。
如果您坚持使用 HTTP 1.0 或不完全兼容的服务器,那么您可能会运气不佳;如果你真的指的是“URL”的“U”部分,即你需要一个跨各种协议(protocol)的通用解决方案,那么问题当然会变得非常非常困难。
关于python - 如何使用twisted下载远程文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3325871/