百度贴吧爬虫【练手】
参考这个博客,看前面几章没什么感觉,还是到了这一章,参考实际的例子,自己动手写个东西出来的时候,需要自己查string、open等用法,边查边记边写理解的透彻。整体是照葫芦画瓢,为了练手用,也加了一些指定下载目录,默认下载目录等函数,可以直接运行#! -*- coding:utf-8 -*-#! usr/bin/python# 爬贴吧测试程序import string,urllib2
·
参考这个博客,看前面几章没什么感觉,还是到了这一章,参考实际的例子,自己动手写个东西出来的时候,需要自己查string、open等用法,边查边记边写理解的透彻。
整体是照葫芦画瓢,为了练手用,也加了一些指定下载目录,默认下载目录等函数,可以直接运行
#! -*- coding:utf-8 -*-
#! usr/bin/python
# 爬贴吧测试程序
import string,urllib2
import os
# 定义下载网页函数
def tieba_spider(url,begin_page,end_page,path):
for i in xrange(begin_page,end_page+1):
tname = string.zfill(i,4) + '.html'#保存成5位名称的html
print '正在下载第' + str(i) + '个网页,并将其存储为' + tname
f = open(path + '\\' + tname,'w+')
temp = urllib2.urlopen(url + str(i)).read()#读取网页内容
f.write(temp)
print '关闭当前已完成文件'
f.close()
# 创建目录并返回路径
def mkdir(path):
if path == '.\\':
# 当前路径则新建临时文件夹
path = '.\\temp'
path = path.strip() # 去掉首尾空格
path = path.rstrip('') # 去掉右侧 \ 符号
exits = os.path.exists(path)
if exits:
print '路径已经存在'
return path
else:
os.makedirs(path)
print '路径' + path + '创建成功!'
#非当前路径
else:
# 判断路径存在与否
path = path.strip() # 去掉首尾空格
path = path.rstrip('') # 去掉右侧 \ 符号
exits = os.path.exists(path)
if not exits: # 不存在路径就创建
os.makedirs(path)
print path + '创建成功'
else:
print path + '已经存在'
return path
return path
# 程序说明
print '这是一个下载贴吧网页的小程序,请按照下面格式说明输入数据,会将贴吧内容下载到指定路径'
# 输入网址、开始页,终止页
bdurl = str(raw_input(u'请输入贴吧网址,去掉"pn="后面的页码:\n'))
# 转换成int类型
begin_page = int(raw_input(u'请输入开始下载的页码:\n'))
end_page = int(raw_input('请输入结束页码:\n'))
# 调用函数
tieba_spider(bdurl,begin_page,end_page,mkdir('.\\'))
更多推荐
已为社区贡献7条内容
所有评论(0)