码迷,mamicode.com
首页 > 其他好文 > 详细

Crawlings

时间:2017-01-24 19:15:32      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:tin   start   urlopen   for   htm   post   gen   pytho   lib   

爬贴吧小说。

爬取该链接中的楼主发言前10页另存为文本文件

 

python2.7

# *-* coding: UTF-8 *-*
import urllib2
import re

class BDTB:
    baseUrl = http://tieba.baidu.com/p/4896490947?see_lz=&pn=
    def getPage(self, pageNum):
        try:
            url = self.baseUrl+str(pageNum)
            request = urllib2.Request(url)
            response = urllib2.urlopen(request).read()
            return response
        except Exception, e:
            print e    
    def Title(self, pageNum):
        html = self.getPage(pageNum)
        reg = re.compile(rtitle="【原创】(.*?)")
        items = re.findall(reg, html)
        for item in items:
            f = open(text.txt, w)
            f.write(标题+\t+item)
            f.close()
        return items
    def Text(self, pageNum):
        html = self.getPage(pageNum)
        reg = re.compile(rd_post_content j_d_post_content ">            (.*?)</div><br>, re.S)
        req = re.findall(reg, html)
        if pageNum == 1:
            req = req[2:]
        for i in req:
            removeAddr = re.compile(<a.*?>|</a>)
            i = re.sub(removeAddr, "", i)
            removeAddr = re.compile(<img.*?>)
            i = re.sub(removeAddr, "", i)
            removeAddr = re.compile(http.*?.html)
            i = re.sub(removeAddr, "", i)
            i = i.replace(<br>, ‘‘)
            f = open(text.txt, a)
            f.write(\n\n+i)
            f.close()

            
bdtb = BDTB()
print Crawl is starting....
try:
    for i in range(1, 10):
        print Crawling Page %s... % (i)
        bdtb.Title(i)
        bdtb.Text(i)
except Exception, e:
    print e

 

Crawlings

标签:tin   start   urlopen   for   htm   post   gen   pytho   lib   

原文地址:http://www.cnblogs.com/dirge/p/6347564.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!