Beautiful Soup, use find()/find_all() attrs parameter to select HTML tag
Note: This article applies to Python 3 environment. Background Recently, I’m working on a web-scrapying…
Read MoreNote: This article applies to Python 3 environment. Background Recently, I’m working on a web-scrapying…
Read MoreNote: This article applies to Python 2 environment. Background Nowadays, I’m writing a program to…
Read More注:本文适用于 Python 3 环境。 之前一篇博客记录了用 Psycopg2 库操作 PostgreSQL 数据库踩过的坑。本文就介绍用 Python 的另一个库 py-postgresql 操作 PostgreSQL 数据库时踩过的坑。…
Read More注:本文适用于 Python 3 环境。 最近工作中需要用到 Python 来操作 PostgreSQL 数据库,最终选用的是 Psycopg2 库。关于具体如何用 Psycopg2 来操作 PostgreSQL,本文不再赘述。这里只记录自己踩过的坑。 连接数据库时的编码问题…
Read More之前写过从 Teahour.FM 下载 podcast 的博客,最近有空听了其中一部分,觉得质量还不错。 另外,近期又发现了一个新的 podcast,叫「IT 公论」,主题是科技方面的。看了这个 podcast 的介绍页面,感觉应该不错,于是便打算下载下来。 由于上次写的代码里,下载部分的代码是完全可以复用的,所以整个过程还是相当顺利的。这次处理的重点在下载链接(.mp3 文件)的获取上,因为「IT 公论」的音频下载链接并不像 Teahour.FM 那么有规律,因此还需要用正则表达式来获取。…
Read More上篇博客是对从 Teahour.FM 下载 podcast 的简单记录,其中提到了那个下载程序支持某些「高级」特性:多线程、断点续传、超时重传。其实,这些特性大家也经常会听到,因为很多专业的下载工具都支持。 如何实现这些特性呢?技术上并不复杂。接下来,我就抛砖引玉,写一下自己的认识。如果有写得不对或不准确的地方,请指正。 需要注意的是: 下面的讨论仅适用于 HTTP 协议的文件下载,其它协议不在讨论之列。 下面的讨论重原理轻实现,你可以选择用自己熟悉的编程语言去实现这些特性。我用的是 Python 3(主要用 urllib 和…
Read MoreTeahour.FM 是一个 podcast 节目,主题是 web 开发和程序员成长。在每一期节目里,主持人都会邀请一位程序员来聊一些相关的话题。到目前为止(2014.02.23),已经出了 44 期。在听了前面两期后,觉得这个 podcast 还不错,值得一听。于是就打算写程序把它所有的 podcast 都下载到本地,有时间慢慢听。 代码已经写好,放在 GitHUb 上,项目名称叫…
Read More