1、导入扩大模块
1# -*- coding: UTF-8 -*-
2# 导入网络申请模块 requests
3import requests
4# 导入 random 模块用来产生随机数
5import random
2、定义爬虫地址、并假装头部信息
1# 定义申请的 url 接口 (须要申请的接口), 假如接口 https://movie.douban.com/j/new_search_subjects
2url = 'https://movie.douban.com/j/new_search_subjects'
3
4# 初识 user-agent, 当时筹备 user-agent 用于头部信息假装
5# 后续会说到如何生成 user-agent
6user_agent = ['Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88'
7 'Safari/537.36',
8 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)',
9 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1'
10 'Safari/534.50'
11 ]
12
13# 定义申请头部信息 (字典类型)
14headers = {15 # User-Agent 信息用于伪装成用户拜访,random.randint(0,2) 随机取出数组中定义好的一个
16 'User-Agent': user_agent[random.randint(0, 2)]
17}
3、封装申请参数
1# 设置申请参数, 依据测试 range 必须赋值才能够取到数据
2params = {
3 'sort': '',
4 'range': '0,20',
5 'tags': '',
6 'start': '0',
7 'genres': '恋情',
8}
4、执行申请、并解决返回后果
1# 执行 GET 申请
2response = requests.get(url=url, headers=headers, params=params)
3
4# 打印响应信息, 返回为 json 数据
5print response.content
6
7# 应用 response.json() 函数进行序列化输入
8data_json = response.json()
9print data_json
10
11# 提取 data_json 中的具体数据
12data_json_array = data_json['data']
13print data_json_array
14
15# 遍历获取电影名称、评分信息
16for data_line in data_json_array:
17 print '电影名称:', data_line['title'], '-> 评分:', data_line['rate']
更多精彩返回微信公众号【Python 集中营】,专一于 python 技术栈,材料获取、交换社区、干货分享,期待你的退出~