豆瓣电影ajax数据获取并保存到本地

目录

一、目标网址分析

二、代码实现


呼噜呼噜~~学习记录:

一、目标网址分析

豆瓣电影排行榜,对分类榜单的部分数据获取 

 随便点进去一个类型可以发现电影信息在外面鼠标向下滑动后才慢慢的加载出来:所以可以进到如下页面进行查看。

 对其请求网址查看:

 

再:

 

 再多找几个类型的网址后:某一个类型的网址

https://movie.douban.com/j/chart/top_list?type=24&interval_id=100%3A90&action=&start=0&limit=20

可以传参,得到不同类型的网址和数据:limt是表示该类型的电影前多少的排名

url = 'https://movie.douban.com/j/chart/top_list'
data = {
    'type': type,
    'interval_id': '100:90',
    'action': '',
    'start': 0,
    'limit': limt
}

不同类型的type:(没有31个,嘿嘿)

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-黑色电影

可以打印试试效果:

 在这里可以将数据复制下来查看:

 json数据:

 但首先要将“json数据”转为“Python对象”:反序列化:json.loads()等。

 

 再在字典里取我们想获取的数据:

 pandas保存:

load_shuju = pd.DataFrame({'电影名称': title, '电影类型': type, '评分': score,
                           '参评人数': vote_count, '演员': actors, '电影链接': move_url})
load_shuju.to_csv('d:/豆瓣.csv')

二、代码实现

"""
2022年

CSDN:抄代码抄错的小牛马
"""
import json
import requests
import pandas as pd

print(
    ''' 
    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-黑色电影
    ''')
type = input("请输入电影类型:")
limt = int(input("请输入想查看前多少名的电影信息:"))
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36'
}
url = 'https://movie.douban.com/j/chart/top_list'
data = {
    'type': type,
    'interval_id': '100:90',
    'action': '',
    'start': 0,
    'limit': limt
}
resp = requests.get(url=url, headers=headers, params=data).text
dict_list = json.loads(resp)
title = [title["title"] for title in dict_list]
type = [types["types"] for types in dict_list]
score = [score["score"] for score in dict_list]
vote_count = [vote_count["vote_count"] for vote_count in dict_list]
actors = [actors["actors"] for actors in dict_list]
move_url = [url["url"] for url in dict_list]
load_shuju = pd.DataFrame({'电影名称': title, '电影类型': type, '评分': score,
                           '参评人数': vote_count, '演员': actors, '电影链接': move_url})
load_shuju.to_csv('d:/豆瓣.csv')

运行看看:

 上面存在D盘目录下的,打开查看数据:

 记录~~~ bye~~


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

抄代码抄错的小牛马

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

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

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

打赏作者

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

抵扣说明:

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

余额充值