首页 > 其他分享 >p2-豆瓣电影

p2-豆瓣电影

时间:2024-01-05 22:24:13浏览次数:26  
标签:p2 douban movie 电影 movic list 豆瓣 type page

一、学习目标

  1、抓取豆电影中的最新热门电影;其中按照不同类型进行抓取

  2、这里是get请求的方式 

    3、json文件元素的值获取

  4、文件写入保存 

二、解决思路

  1、准备好url地址【https://movie.douban.com/】,按F12进行网页分析,从网页中可以得到请求方式为get,并且针对不同类型电影请求式的发起链接如下:

https://movie.douban.com/j/search_subjects?type=movie&tag=最新&page_limit=50&page_start=0
https://movie.douban.com/j/search_subjects?type=movie&tag=豆瓣高分&page_limit=50&page_start=0
https://movie.douban.com/j/search_subjects?type=movie&tag=冷门佳片&page_limit=50&page_start=0
https://movie.douban.com/j/search_subjects?type=movie&tag=华语&page_limit=50&page_start=0
https://movie.douban.com/j/search_subjects?type=movie&tag=欧美&page_limit=50&page_start=0
https://movie.douban.com/j/search_subjects?type=movie&tag=韩国&page_limit=50&page_start=0
https://movie.douban.com/j/search_subjects?type=movie&tag=日本&page_limit=50&page_start=0

针对其中冷门佳片进行网页分析,可以在响应中看到,是可以得到有效的数据的,如下图

三、实例代码

#1、导入模块
import json
import requests
#2、准备url地址,并发起请求
movic_type = input("请选择电影类型:0-热门,1-最新,2-豆瓣最高,3-冷门佳片,4-华语,5-,6-韩国,7-日本\n")
dict = {
    "0":"热门",
    "1":"最新",
    "2": "豆瓣最高",
    "3": "冷门佳片",
    "4": "华语",
    "5": "欧美",
    "6": "韩国",
    "7": "日本"
}
url = f"https://movie.douban.com/j/search_subjects?type=movie&tag={dict[movic_type]}&page_limit=50&page_start=0"
#3、获取数据,并解析
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.42"
}
resp = requests.get(url=url ,headers=headers).json()
for movic_list  in resp["subjects"]:
    rate = movic_list["rate"]
    cover_x = movic_list["cover_x"]
    title = movic_list["title"]
    url = movic_list["url"]
    playable = movic_list["playable"]
    cover = movic_list["cover"]
    id = movic_list["id"]
    cover_y = movic_list["cover_y"]
    is_new = movic_list["is_new"]
    print(title + " 评分:"+ rate +" 链接:"+ url )
    #4、保存数据
    with open("电影.txt",'a',)as f:
        f.write(title + " 评分:"+ rate +" 链接:"+ url)
        f.write("\n")
f.close()

其中获取到json格式的数据后,循环字典来获取每一个元素的值

四、总结

1、在最后保存数据的时候,注意要要用a表示追加写入,否则的话就会覆盖上一次写入的内容

标签:p2,douban,movie,电影,movic,list,豆瓣,type,page
From: https://www.cnblogs.com/zp513/p/17948118

相关文章

  • P2726 [SHOI2005] 树的双中心 题解
    Description\(n\leq5\times10^4\),树的深度\(\leq100\)。Solution对于每个\(x,y\),满足\(d(v,x)\leqd(v,y)\)或者\(d(v,x)\geqd(v,y)\)的点一定构成一个子树,所以可以枚举这个子树的根,然后对两边分别求重心可以得到答案。但是直接暴力求是\(O(n^2)\)的,过不了。注......
  • 美国短篇小说与电影
    BarnBurning作者WilliamFaulkner:1897-1962作品Novels:TheSoundandtheFury(1929)AsILayDying(1930)Sanctuary(1931)LightinAugust(1932)Absalom,Absalom!(1936)WildPalms(1936)ShortStoriesTheseThirteen(1931)GoDown,Moses(1942)Collec......
  • P2898 [USACO08JAN] Haybale Guessing G 题解
    题目传送门前置知识二分答案|并查集解法对条件的合法性判断其他题解已经讲得很明白了,这里不再赘述。这里主要讲一下用并查集实现黑白染色问题。以下内容称被覆盖为黑色,不被覆盖为白色。本题因为是单向染色,即从白到黑,故可类似luoguP1840ColortheAxis和D的并查集或......
  • P2395 BBCode转换Markdown
    BBCode转换MarkdownLuoguP2395题面太长不贴了。Solution不算大的大模拟。推荐模块化的写,每个功能都开一个函数来实现。同时推荐使用enum来代替代码中的数字,增强可读性。不妨分两步来做,第一步是校验输入是否合法,第二步是将输入转换成对应的输出。先来做第一步。因为保证......
  • 大数据分析与可视化 之 猫眼电影爬虫
    大数据分析与可视化之猫眼电影爬虫importrandomimporttimeimportreimportrequestsimportcsvclassMaoyanSpider(object):#初始化#定义初始页面urldef__init__(self):self.url='https://www.maoyan.com/board/4?offset={}'defg......
  • 【电影推荐系统】Spring Boot + Vue3 前后端分离项目
    目录0前言1项目前端介绍1.1项目启动和编译1.1.1项目启动1.1.2项目编译1.2前端技术栈1.3功能模块前端界面展示1.3.1基础功能模块1.3.2用户模块1.3.3特色功能展示1.3.4界面自适应实现2项目后端介绍2.1项目打包部署2.1.1项目打包2.1.2项目部署2.2后端功能实现3数据......
  • 再传捷报!百望云荣登投资家网“2023年度企业服务领域创新企业TOP20”
    近日,投资家网旗下投资家研究院重磅发布“投资家网·2023中国价值企业榜”。经过层层严格评选,百望云荣登“2023年度企业服务领域创新企业TOP20”,再次说明了业界权威机构认可百望云的创新能力和市场价值。本次评选,投资家网旗下投资家研究院本着客观公正的态度,从成长、创新、融资、专......
  • centos7 升级curl-8.2.1 支持http2 (yum update)
    转载于:https://www.cnblogs.com/huangweimin/articles/15882913.htmlCentOS7默认的curl版本最新就到7.29 ,它是不支持http2的#curl--versioncurl7.29.0(x86_64-redhat-linux-gnu)libcurl/7.29.0NSS/3.53.1zlib/1.2.7libidn/1.28libssh2/1.8.0Protocols:dict......
  • OpenEuler22.03SP2 LTS安装PostgreSQL15.5并配置一主二从
    环境准备序号IP标识(hostname)CPU/内存配置系统盘数据盘1192.168.8.190pg018C+16G80G500G2192.168.8.191pg028C+16G80G500G3192.168.8.192pg038C+16G80G500G规划的文件夹目录(所有主机):##以下目录为本文规划的目录,可以提前创建,也可以跟着......
  • 【Python数据分析课程设计】大数据分析—TMDB 电影数据集分析
    一、选题背景随着当今社会的发展,电影已经成为人们日常生活中不可或缺的一部分。人们通过观看电影来获得娱乐、放松、获取信息以及探索不同的文化和观点。在数字化时代,大量的电影数据被记录和存储,这为电影数据集的分析提供了丰富的资源。而如今,不同国家和地区的电影制作和发行公司......