首页 > 学院 > 开发设计 > 正文

python爬虫笔记

2019-11-14 17:42:49
字体:
来源:转载
供稿:网友

初学python爬虫,感觉光看看学不到什么,自己瞎折腾了一个爬百度贴吧小说。

自己感觉不是很实用,不过还是写下来备忘下,也算留个纪念。

#! /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('请输入贴吧名字:')    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()    PRint 'Done!'if __name__=='__main__':    main()

  


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表