初學(xué)python爬蟲,感覺光看看學(xué)不到什么,自己瞎折騰了一個(gè)爬百度貼吧小說。
自己感覺不是很實(shí)用,不過還是寫下來備忘下,也算留個(gè)紀(jì)念。
#! /usr/bin/env/python 27# coding:gbkimport urllib2import redef findurl(i): pattern=re.compile('/p//d{10}') Match=re.search(pattern,i).group() url='http://tieba.baidu.com'+Match+'?see_lz=1' return urldef findtitle(i): pattern=re.compile(u'/xb5/xda.+/xd5/xc2.+/xa1/xbf') title=re.search(pattern,i).group() return titledef main(): name=raw_input('請(qǐng)輸入貼吧名字:') fo=open(name+'.txt','w+') name=urllib2.quote(name) url='http://tieba.baidu.com/f/good?kw='+name+'&cid=0&pn=' for index in xrange(550,-1,-50): page=urllib2.urlopen(url+str(index)).read() pattern=re.compile(u'<a href="/p//d{10}" title="/xb5/xda.+/xd5/xc2.+" t') result=re.findall(pattern,page) for each in reversed(result): #fo.writelines(findtitle(each)+'/n') article=urllib2.urlopen(findurl(each)).read() pattern=re.compile('id="post_content.*?>(.*?)</div>') content=re.search(pattern,article).group() pattern=re.compile('.+>') stripl=re.search(pattern,content).group() result=content.replace('<br>','/n').rstrip('</div>').lstrip(stripl) fo.writelines(result+'/n') fo.close()
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注