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

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 技术栈,资料获取、交流社区、干货分享,期待你的加入~

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python 集中营

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值