网页抓取

网页抓取

昨天一位顾客请我帮他把一整网站的内容成为MSWORD的文件。我发现了这个网站有一百多的网页,难怪请去安迪牌帮他的忙!当然我不要手动复制网页内容然后在MSWORD粘贴,最后写小程序。

细节

虽然能用requests module但是我发现wget的软件更合适,所以我让wget把每一个网页下载了:

wget \
     --recursive \
     --no-clobber \
     --page-requisites \
     --html-extension \
     --convert-links \
     --restrict-file-names=windows \
     --domains example-website.org \
     --no-parent \
         example-website.org

终于有一个文件夹,里面有很多文件夹和.html文件。所以第一个部分就是要从每一个文件夹一步一步的选择文件 (但不要打印和atom网页):

for subdir, dirs, files in os.walk(rootdir):
    for file in files:
        if (file[-4:]=="html" and file[-9:]!="atom.html ...
more ...

CSV to list

把逗号分隔值的字符串转变python的单子

有一个字符串的里面有词,用逗号来分开,像:

>>>string1 = "bill, ben, jack, james"

我要把这件数据成为python的单子可是python单子要求每一个词应该被引用号围绕。 既然有两百词所以我就不要手动得做,最快写代码让python做! 真巧可以用string.split 的办法:

>>>list1 = string1.split(',')
>>>print list1
>>>["bill", "ben", "jack", "james"]
more ...