关于python:爬虫实战python-扩展库-urllib2-应用之如何自定义电影类型爬取豆瓣电影数据

37次阅读

共计 1408 个字符,预计需要花费 4 分钟才能阅读完成。

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 技术栈,材料获取、交换社区、干货分享,期待你的退出~

正文完
 0