1、导入我的项目所须要的的扩大库
1# -*- coding: UTF-8 -*-23# 导入 urllib 用于参数数据编码4import urllib5# 导入 urllib2 用于执行外围爬虫6import urllib278# 导入 UserAgent 用于生成 UA9from fake_useragent import UserAgent
2、执行网页申请函数
1# 执行网页申请 2def req_url(self,full_url): 3 headers = { 4 # 随机生成一个 User-Agent 5 'User-Agent': self.user_agent.random 6 } 7 # 结构 Request 申请对象 8 request = urllib2.Request(headers=headers, url=full_url) 9 # 执行申请10 response = urllib2.urlopen(request)11 return response.read()
3、保留网页下载的 html 源代码
1# 将爬取下来的 html 源代码保留2def save_doc(self,html_doc, file_name):3 print "开始保留文件:", file_name4 with open(file_name, 'w') as f:5 f.write(html_doc)6 print "实现文件:", file_name, " 保留"
4、组装残缺的爬虫地址、参数组装等
1# 结构爬虫环境、并执行 2def run_spider(self): 3 for page in range(self.begin, self.end + 1): 4 # 计算页码 5 pn = (page - 1) * 50 6 # 对中文参数进行编码 7 name = urllib.urlencode({'kw': self.tieba_name}) 8 # 组装残缺的爬虫地址 9 full_url = self.url + name + '&pn=' + str(pn)10 # 依据页数定义文件名称11 file_name = str(page) + '.html'12 # 执行爬虫网页申请13 html_doc = self.req_url(full_url)14 # 保留文件15 self.save_doc(html_doc, file_name)
5、用户自定义输出参数
1# 用户输出相干数据2url = 'http://tieba.baidu.com/f?'3tieba_name = raw_input('请输出要爬取的贴吧名称:')4begin = int(raw_input('请输出开始页码:'))5end = int(raw_input('请输出完结页码:'))
实力的晋升是最重要的,进入公众号回复:“贴吧爬虫源代码”,支付贴吧爬虫源代码、快去支付刷题吧~