1、导入我的项目所须要的的扩大库
1# -*- coding: UTF-8 -*- 2 3# 导入 urllib 用于参数数据编码 4import urllib 5# 导入 urllib2 用于执行外围爬虫 6import urllib2 7 8# 导入 UserAgent 用于生成 UA 9from fake_useragent import UserAgent
2、执行网页申请函数
1# 执行网页申请 2def req_url(self,full_url): 3 # 结构申请头 4 headers = { 5 # 随机生成一个 User-Agent 6 'User-Agent': self.user_agent.random, 7 # 设置申请格局 8 "Accept": "application/json, text/plain, */*", 9 # 容许申请语言 10 "Accept-Language": "zh-CN,zh;q=0.8" 11 } 12 # 申请参数 13 params = { 14 'start':self.begin, 15 'tags':self.name 16 } 17 # 对中文参数编码 18 params = urllib.urlencode(params) 19 # 结构 Request 申请对象 20 request = urllib2.Request(headers=headers, url=full_url,data=params) 21 # 执行申请 22 response = urllib2.urlopen(request) 23 return response.read()
3、保留文件
1# 将爬取下来的 html 源代码保留 2def save_doc(self,html_doc, file_name): 3 print "开始保留文件:", file_name 4 with open(file_name, 'w') as f: 5 f.write(html_doc) 6 print "实现文件:", file_name, " 保留"
4、组装执行爬虫
1# 结构爬虫环境、并执行 2def run_spider(self): 3 # 依据页数定义文件名称 4 file_name = str(self.name) + '.html' 5 # 执行爬虫网页申请 6 html_doc = self.req_url(self.url) 7 # 保留文件 8 self.save_doc(html_doc, file_name)
5、用户自定义输出
1# 用户自定义输出参数 2url = 'https://movie.douban.com/j/new_search_subjects?sort=T&range=0,10' 3type_name = raw_input('请输出豆瓣电影类型:') 4begin = int(raw_input('请输出爬取条数:'))
更多精彩返回微信公众号【Python 集中营】,专一于 python 技术栈,材料获取、交换社区、干货分享,期待你的退出~