# author: mmm
# datetime:2022/6/24 17:30周五
# software: PyCharm
"""
文件说明:
"""
import requests
from lxml import etree
import pandas as pd
import json
# 1.电影类型
t1 = "1-纪录片 2-传记 3-犯罪 4-历史 5-动作 6-情色 7-歌舞 8-儿童 10-悬疑 11-剧情 12-灾难 13-爱情 14-音乐 15-冒险 16-奇幻 17-科幻 18-运动 19-惊悚 20-恐怖 22-战争 23-短片 24-喜剧 25-动画 26-同性 27-西部 28-家庭 29-武侠 30-古装 31-黑色电影"
types = dict()
for i, j in enumerate(t1.split(' ')):
# print(j.split('-'))
types[j.split('-')[0]] = j.split('-')[1]
type1, rank1 = [i for i in input("请依次输入[电影类型(1-29,9/21没有)]和[排名], 用{逗号}分割:").split(',')]
ua = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36'}
url = f'https://movie.douban.com/j/chart/top_list'
parms = {
'type': type1,
'interval_id': '100:90',
'action': '',
'start': 0,
'limit': rank1
}
res = requests.get(url, headers=ua, params=parms)
# 2.获取到电影的json数据
# print(res.text)
data1_list = json.loads(res.text)
名称 = [i['title'] for i in data1_list]
评分 = [i['score'] for i in data1_list]
类型 = [i['types'] for i in data1_list]
国家 = [i['regions'] for i in data1_list]
上映日期 = [i['release_date'] for i in data1_list]
主演 = [i['actors'] for i in data1_list]
地址 = [i['url'] for i in data1_list]
# 3.数据保存
df1 = pd.DataFrame({'title': 名称, 'score': 评分, 'types': 类型, 'regions': 国家, 'release_date': 上映日期, 'actors': 主演, 'url': 地址})
df1.to_csv("豆瓣电影.csv", encoding="utf-8", header=0, index=None)
# 4.编码使用utf-8,否则乱码
3——结果在这里
多个高分电影我来选,美滋滋~~~



