当前位置:首页 > Python教程 > python技巧

python爬取标题和作者时间的小程序

#encoding:UTF-8
import urllib.parse
import urllib.request
import base64
import re
import sys
import time
from random import sample
import codecs
from html.parser import HTMLParser
log = ‘gogogo.txt‘
logfile = codecs.open(log,‘w‘,‘utf-8‘)
class MyHTMLParser(HTMLParser):
    def __init__(self):
        HTMLParser.__init__(self)
        self.a=0
        self.span=0;
    def handle_starttag(self,tag,attrs):
        if tag==‘a‘:
            for name,value in attrs:
                if name==‘class‘ and value==‘tit‘:
                    self.a=1
        if tag==‘span‘:
            for name,value in attrs:
                if name==‘class‘ and value==‘reply‘:
                    self.span=1
    def handle_endtag(self, tag):
        if tag == ‘a‘ and self.a==1:
            self.a=0
            logfile.write(‘|‘)
        if tag==‘span‘ and self.span==1:
            self.span=0
            logfile.write(‘n‘)
    def handle_data(self, data):
        if (self.a or self.span):
            logfile.write(data)
parser = MyHTMLParser()

def getpage(url):
    req = urllib.request.Request(url)
    response = urllib.request.urlopen(req)
    the_page = response.read()
    return the_page
for i in range(1,405):
    url=‘http://bbs.qyer.com/forum-52-‘+str(i)+‘.html‘
    page=getpage(url).decode(‘utf-8‘,‘ignore‘)
    parser.feed(page)
    print(i)

原文:http://my.oschina.net/u/994484/blog/417102


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐