最码农 最码农
  • 首页
  • 动态广场
  • 精选栏目
  • 闲言碎语
  • 左邻右里
  • 笔记屋
  • 注册
  • 登录
首页 › Python › 爬虫实例——爬取豆瓣电影的分类排行榜

爬虫实例——爬取豆瓣电影的分类排行榜

Cosy
2年前Python阅读 2,064

前面我们说到如何使用爬虫进行简单的图片爬取,那么接下来我们就来看看,如何爬取JSON数据。我们知道,JSON数据是一种十分重要的数据交换格式,很多网站都会利用JSON进行数据的传递,因此了解JSON数据的爬取还是十分重要的。

爬虫实例——爬取豆瓣电影的分类排行榜-最码农

第一步还是分析要爬取的数据的URL。通过控制台我们可以发现,豆瓣的JSON数据的URL为:https://movie.douban.com/j/chart/top_list?type=17&interval_id=100%3A90&action=&start=0&limit=20

爬虫实例——爬取豆瓣电影的分类排行榜-最码农

接下去开始编写代码:

# 需求:爬取豆瓣电影的分类排行榜
import urllib.request as urq
from io import StringIO
import pandas as pd

# 1.先分析豆瓣的url   得到了我们需要的url
url = 'https://movie.douban.com/j/chart/top_list?type=17&interval_id=100%3A90&action=&start=0&limit=20'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/'
                         '537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'}
# 2.获取数据
req = urq.Request(url, headers=headers)

# 3.调用urlopen
res=urq.urlopen(req)

# 4.读取数据  read
data = res.read().decode("utf-8")

# 5.利用pandas解析得到的json数据
df = pd.read_json(StringIO(data))

# 6.获取想要的字段  rank  regions  title  actors
final_data = df[['rating', 'regions', 'title', 'actors']]

# 7.把得到的这些数据  保存到本地   注意乱码问题:encoding="utf_8_sig"
final_data.to_csv("G:\\douban\\result.csv", encoding="utf_8_sig")

运行完以上程序后我们打开CSV文件:

爬虫实例——爬取豆瓣电影的分类排行榜-最码农

JSON数据已成功爬取并保存。

爬虫
赞赏 赞(7) 收藏(0)
爬虫实例——简单的图片爬取
上一篇
Pandas报错: raise ValueError("Protocol not known: %s" % protocol)
下一篇
再想想
暂无评论
随 机 推 荐
基于Layui的兽音译者加密页面
Hadoop 小文件优化方法
Hadoop2.x 和 Hadoop3.x 的新特性
MapReduce框架原理-InputFormat数据输入
Hadoop概论(一)—— 开篇词
Hadoop HDFS(二)
Hadoop HA 高可用
Hadoop 数据压缩
7
  • 7
  • 0
介绍

我们致力于打造一个原创的计算机相关技术的博客网站,旨在为访客提供一个优质的计算机技术教程交流平台。网站开辟了很多于计算机相关的栏目,并且收集了不少实用资源,同时也鼓励欢迎访客一起分享、交流、学习。

灵魂推荐
Veer图库 数码荔枝
栏目标题
首页 动态广场 精选栏目 闲言碎语 左邻右里 笔记屋
Copyright © 2021-2023 最码农. 苏ICP备20033168号
  • 首页
  • 动态广场
  • 精选栏目
  • 闲言碎语
  • 左邻右里
  • 笔记屋
# 教程 # # Hadoop # # HDFS # # 人工智能 # # 算法 #
Cosy
即使世界毁灭,也总有回光返照的那一刻
90
文章
3
评论
425
喜欢