天涯创业家园:python 抓取天涯帖子内容并保存

python 抓取天涯帖子内容并保存
作者:大捷龙 csdn : http://blog.csdn.net/koanzhongxue

**

分析:天涯的帖子下载可以分为以下几个步骤

  • 手动传入一个帖子首页的地址
  • 打开文本
  • 提取帖子标题
  • 获取帖子的最大页数
  • 遍历每一页,获得每条回复的是否是楼主、作者昵称、回复时间。
  • 写入看文本
  • 关闭文本
  • 预备:

    Python的文件操作:

    一、打开文件
    代码如下:

    f = open(“d:\test.txt”, “w”)

    说明:
    第一个参数是文件名称,包括路径;第二个参数是打开的模式mode
    ‘r’:只读(缺省。如果文件不存在,则抛出错误)
    ‘w’:只写(如果文件不存在,则自动创建文件)
    ‘a’:附加到文件末尾
    ‘r+’:读写

    二、读取内容
    f.read(size)
    参数size表示读取的数量,可以省略。如果省略size参数,则表示读取文件所有内容。
    f.readline()
    读取文件一行的内容
    f.readlines()
    读取所有的行到数组里面[line1,line2,…lineN]。在避免将所有文件内容加载到内存中,这种方法常常使用,便于提高效率。

    三、写入文件
    f.write(string) 将一个字符串写入文件,如果写入结束,必须在字符串后面加上”\n”,然后f.close()关闭文件


    实战:

    1 选取天涯帖子:《风云(中国第一本企业家自传)创业家园天涯论坛》

    URL= http://bbs.tianya.cn/post-house-590038-1.shtml
    2 打开帖子首页

    url ='http://bbs.tianya.cn/post-enterprise-8487-1.shtml'link = urllib2.urlopen(url)html = link.read()

    3 获取标题

    HTML:



    风云(中国第一本企业家自传)创业家园天涯论坛

    #获取帖子的基本信息#正则表达式,用于提取文章标题gettitle = re.compile(r'<title>(.*?)</title>')title = re.findall(gettitle,html)

    4 获取最大页数

    <strong>1</strong> <a href="/post-enterprise-8487-2.shtml">2</a> <a href="/post-enterprise-8487-3.shtml">3</a> <a href="/post-enterprise-8487-4.shtml">4

    相关推荐

    相关文章