#coding: utf-8

import urllib2
import urllib
import re
import thread
import time

class HTML_Tool:
    BgnCharToNoneRex = re.compile("(\t|\n| |<a.*?>|<img.*?>)")
    CharToNewLineRex = re.compile("(<br/>)")

    def Replace_Char(self,x):
        x = self.BgnCharToNoneRex.sub("",x)
        x = self.CharToNewLineRex.sub("\n",x)
        return x

class HTML_Model:
    def __init__(self):
        self.page=1
        self.pages=[]
        self.myTool=HTML_Tool()
        self.enable=False
    def GetPage(self,page):
        myUrl="http://m.qiushibaike.com/hot/page/"+page
        myResponse=urllib2.urlopen(myUrl)
        myPage=myResponse.read()
        unicodePage=myPage.decode("utf-8")
        myItems=re.findall('<div.*?class="content".*?title="(.*?)">(.*?)</div>',unicodePage,re.S)
        items=[]
        for item in myItems:
            #items.append([item[0],item[1]])
            items.append([item[0].replace("\n",""),item[1].replace("\n","")])
        return items
    def LoadPage(self):
        while self.enable:
            if len(self.pages)<2:
                try:
                    myPage=self.GetPage(str(self.page))
                    self.page+=1
                    self.pages.append(myPage)
                except:
                    print "无法链接!"
            else:
                time.sleep(1)
    def ShowPage(self,q,page):
        for items in q:
            print u"第%d页" % page,items[0]
            print items[1]
            myInput=raw_input()
            if myInput=="quit":
                self.enable=False
                break
    def Start(self):
        self.enable=True
        page=self.page
        print u'正在加载中请稍候......'
        thread.start_new_thread(self.LoadPage,())
        while self.enable:
            if self.pages:
                nowPage=self.pages[0]
                del self.pages[0]
                self.ShowPage(nowPage,page)
                page+=1
print u'请按下回车浏览内容:'
raw_input(' ')
myModel = HTML_Model()
myModel.Start()

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看REAdMe.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看READme.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值