February 23, 2014

HTTP 文件下载的几个特性及实现

上篇博客是对从 Teahour.FM 下载 podcast 的简单记录,其中提到了那个下载程序支持某些「高级」特性:多线程、断点续传、超时重传。其实,这些特性大家也经常会听到,因为很多专业的下载工具都支持。 如何实现这些特性呢?技术上并不复杂。接下来,我就抛砖引玉,写一下自己的认识。如果有写得不对或不准确的地方,请指正。 需要注意的是: 下面的讨论仅适用于 HTTP 协议的文件下载,其它协议不在讨论之列。 下面的讨论重原理轻实现,你可以选择用自己熟悉的编程语言去实现这些特性。我用的是 Python 3(主要用 urllib 和…

Read More

用 Python 脚本从 Teahour.FM 下载 podcast

Teahour.FM 是一个 podcast 节目,主题是 web 开发和程序员成长。在每一期节目里,主持人都会邀请一位程序员来聊一些相关的话题。到目前为止(2014.02.23),已经出了 44 期。在听了前面两期后,觉得这个 podcast 还不错,值得一听。于是就打算写程序把它所有的 podcast 都下载到本地,有时间慢慢听。 代码已经写好,放在 GitHUb 上,项目名称叫…

Read More