爬取央视榜单节目

news2025/1/17 3:16:38

爬取结果:

 

热播榜: 动画片:

 电视剧:

纪录片:

特别节目:

代码部分: 

import re
import pymongo

import requests

res = requests.get('https://tv.cctv.com/top/index.shtml?spm=C28340.PdNvWY0LYxCP.EtmP5mypaGE4.11')
content = res.content.decode("utf8")
# print(content)
datas = re.findall(r"<ul>.*?</ul>", content, re.S)
# print(datas[1])   # 热播榜
# print(datas[2])   # 动画片
# print(datas[3])   # 电视剧
# print(datas[4])   # 纪录片
# print(datas[5])   # 特别节目

# 热播榜
# result = {
#     "name": "热播榜",
#     "items": []
# }
# # re.S 包括换行
# items = re.findall(
#     r'<li.*?lazy="(.*?)".*?<div class="text"><a href=".*?" target="_blank">(.*?)</a></div>.*?<div class="column"><i class="icon_l"></i><a href=".*?" target="_blank">(.*?)</a><i class="icon_r"></i>.*?</div>',
#     datas[1], re.S)
# for item in items:
#     # print(item)
#     result["items"].append({
#         "img": item[0],
#         "title": item[1],
#         "category": item[2]
#     })
#
client = pymongo.MongoClient()
db = client.get_database("cctv")
# collection = db.get_collection("hot_show")
# collection.insert_one(result)


# 动画片
# result1 = {
#     "name": "动画片",
#     "items": []
# }
# items = re.findall(
#     r'<li.*?lazy="(.*?)".*?<div class="text"><a href=".*?" target="_blank">(.*?)</a></div>.*?<p><a href=".*?" target="_blank">(.*?)</a></p>',
#     datas[2], re.S)
# for item in items:
#     # print(item)
#     result1["items"].append({
#         "img": item[0],
#         "title": item[1],
#         "type": item[2]
#     })
# collection = db.get_collection("donghua")
# collection.insert_one(result1)


# 电视剧
# result2 = {
#     "name": "电视剧",
#     "items": []
# }
# items = re.findall(
#     r'<li.*?lazy="(.*?)".*?<span class="number"><i class="icon_l"></i><i class="txt">(.*?)</i><i class="icon_r"></i></span>.*?<div class="text"><a href=".*?" target="_blank">(.*?)</a></div>.*?<p><a href=".*?" target="_blank">(.*?)</a></p>',
#     datas[3], re.S)
# for item in items:
#     # print(item)
#     result2["items"].append({
#         "jishu": item[0],
#         "title": item[1],
#         "jieshao": item[2]
#     })
# collection = db.get_collection("dianshiju")
# collection.insert_one(result2)


# 纪录片
# result3 = {
#     "name": "纪录片",
#     "items":[]
# }
# items = re.findall(
#     r'<li.*?lazy="(.*?)".*?<span class="number"><i class="icon_l"></i><i class="txt">(.*?)</i><i class="icon_r"></i></span>.*?<div class="text"><a href=".*?" target="_blank">(.*?)</a></div>.*?<p><a href=".*?" target="_blank">(.*?)</a></p>',
#     datas[4], re.S)
# for item in items:
#     # print(item)
#     result3["items"].append({
#         "img":item[0],
#         "type":item[1],
#         "name":item[2],
#         "jiehsao":item[3]
#     })
# collection = db.get_collection("jilupian")
# collection.insert_one(result3)



# 特别节目
result4 = {
    "name": "特别",
    "items": []
}

items = re.findall(
    r'<li.*?lazy="(.*?)".*?<span class="number"><i class="icon_l"></i><i class="txt">(.*?)</i><i class="icon_r"></i></span>.*?<div class="text"><a href=".*?" target="_blank">(.*?)</a></div>.*?<p><a href=".*?"_blank">(.*?)</a></p>',
    datas[5], re.S)
for item in items:
    # print(item)
    result4["items"].append({
        "img": item[0],
        "pindao": item[1],
        "title": item[2],
        "jieshao": item[3]
    })
collection = db.get_collection("tebie")
collection.insert_one(result4)



client.close()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2060016.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5款文案生成器,高效率生成短剧解说文案

短剧解说在自媒体写作中很受大家的欢迎&#xff0c;相比其它的视频内容写作&#xff0c;短剧解说不仅写作更简单&#xff0c;而且也更容易带来好的流量&#xff0c;但是&#xff0c;对于短剧解说写作者来说&#xff0c;让人觉得麻烦的一点是短剧解说的文案问题&#xff0c;然而…

如何兼顾PACS方案性能、容量和成本?一文了解SmartX分布式存储与应用一体化平台

重点内容 PACS 应用场景及 IT 基础设施需求分析现有 PACS 应用场景方案优缺点分析SmartX 分布式存储与应用一体化平台方案与关键技术解读SmartX 针对 PACS 应用场景的解决方案针对不同规模的 PACS 资源池配置模拟 PACS&#xff08;Picture Archiving and Communication Syste…

vue3 + tsx 实现音乐播放器

1、效果图 2、文件路径 3、调用方式 audioData为音频的相关数据,lrc为歌词原文(带时间的字符串),举个例子: const lrc = ` [00:00.06]︿☆我不配☆︿ [au:]飒飒飒飒仨撒撒所所撒撒 [00:00.75] [00:01.11]演唱:周杰伦 [00:18.40]这街上太拥挤 太多人有秘密 ` 播放器调用…

[机器学习]--线性回归算法

线性回归算法原理 线性关系在生活中有很多案例: 摄氏度和华氏度的转化: F C ⋅ 9 5 32 F C \cdot\frac{9}{5}32 FC⋅59​32学科最终成绩的计算: 最终成绩 0.3 \times 平时成绩 0.7 \times 期末成绩 线性回归(Linear regression)就是利用回归函数对一个或多个自变量…

Linux系统编程:IPC通信和网络通信

1.IPC通信 IPC 进程间通信方式&#xff1a; 共享内存是最高效的进程间通信方式 共享内存: 1.是一块&#xff0c;内核预留的空间 2.最高效的通信方式&#xff0c;避免了用户空间到内核空间的数据拷贝 IPC通信方式 ---操作流程类…

BaseCTF2024 WP (主要为Rev)

Rev Rev视频解析&#xff1a;[Rev0&#xff1a;从零开始的逆向生活]BaseCTF2024 Week1 Rev 讲解_哔哩哔哩_bilibili [Week1] You are good at IDA [Week1] UPX mini 脱UPX标准壳&#xff0c;解base64 [Week1] Ez Xor 简单的反向异或&#xff0c;数据动调取一下 #base_xor e…

自开发多功能Vue组件:可定义滚动速度[回到顶部/底部]图标组件的安装与使用!

samdy-chan/vue3-goto-top-or-bottom Preview&#xff08;本组件使用效果预览图&#xff09; 本组件使用过程中的 GIF 动态效果图&#xff08;图片经过压缩&#xff0c;视觉可能会有所模糊&#xff09;&#xff1a; Functional Description&#xff08;功能描述&#xff09; …

关于LLC知识10

在LLC谐振腔中能够变化的量 1、输入电压 2、Rac&#xff08;负载&#xff09; 所以增益曲线为红色&#xff08;Rac无穷大&#xff09;已经是工作的最大极限了&#xff0c;LLC不可能工作在红色曲线之外 负载越重时&#xff0c;增益曲线越往里面 假设&#xff1a; 输入电压…

谷歌反垄断案:美国科技史上最大的垄断诉讼与未来展望

引言 近年来&#xff0c;随着全球科技巨头的迅猛崛起&#xff0c;反垄断诉讼逐渐成为各国监管机构打击科技公司滥用市场地位的重要手段。美国作为全球科技产业的发源地&#xff0c;其对反垄断的关注也从未减弱。2023年&#xff0c;美国联邦法院针对谷歌发起的反垄断诉讼&#…

《Spring Cloud 微服务架构核心组件与 Nacos 配置管理详解》

微服务 1.SpringCloud中的核心组件 Spring Cloud Netflix组件 组件名称作用Eureka服务注册中心RibbonRibbonFeign声明式服务调⽤Hystrix客户端容错保护ZuulAPI服务⽹关 Spring Cloud Alibaba组件 组件名称作用Nacos服务注册中心Sentinel客户端容错保护 Spring Cloud原⽣及…

【python】JS逆向中,手把手教会你如何层层突破瑞数加密

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…

Python中matplotlib使用4

在matplotlib中&#xff0c;可以通过绘制“饼图”来展示各类别在总体中所占的比例。 1 绘制基本“饼图” 通过matplotlib中的pie()函数绘制饼图&#xff0c;代码如图1所示。 图1 绘制基本“饼图”的代码 从图1中可以看出&#xff0c;pie()函数的参数y即为要绘制的数据&#…

微服务的基本理解和使用

目录​​​​​​​ 一、微服务基础知识 1、系统架构的演变 &#xff08;1&#xff09;单体应用架构 &#xff08;2&#xff09;垂直应用架构 &#xff08;3&#xff09;分布式SOA架构 &#xff08;4&#xff09;微服务架构 &#xff08;5&#xff09;SOA与微服务的关系…

Qt 0821作业

一、思维导图

一种针对自然语言文本的提示策略

文章介绍了一种创新的提示策略&#xff0c;旨在利用大型语言模型从自然语言文本中提取业务流程相关信息&#xff0c;例如活动和参与者等&#xff0c;并建立它们之间的关系。通过这种方法&#xff0c;研究人员能够在无需大量数据的情况下实现高质量的信息提取&#xff0c;进而用…

Apache Commons-IO 库

Apache Commons-IO是Apache开源基金组织提供的一组有关IO&#xff08;Input/Output&#xff09;操作的小框架。这个库的主要目的是为了提高IO流的开发效率&#xff0c;减少在进行文件读写、目录遍历等操作时编写的样板代码量。通过使用Commons-IO库&#xff0c;开发者可以更加简…

为一个花店编写一个库存管理程序,花点库存的花用花的名称、颜色、单价和株的数量来表示。(可直接运行)

为一个花店编写一个库存管理程序&#xff0c;花点库存的花用花的名称、颜色、单价和株的数量来表示。 要求&#xff1a; &#xff08;1&#xff09;说明一个结构数组&#xff0c;存储库存的鲜花数据。 &#xff08;2&#xff09;编写一个函数input_data()&#xff0c;输入现…

【学习笔记】卫星网络(NTN)的窄带物联网(NB-IoT)研究 -- 3GPP TR 36.763(四)

目录 8. 后续研究方向的建议 8.1 来自RAN1的建议 8.1.1 针对NR NTN和IoT NTN的共同增强建议 8.1.2 Release-17时间框架内RAN1建议的总结 8.2 来自RAN2的建议 关于卫星网络&#xff08;NTN&#xff09;的窄带物联网&#xff08;NB-IoT&#xff09;/增强型机器类型通信&#…

【论文阅读33】Deep learning optoacoustic tomography with sparse data

Deep learning optoacoustic tomography with sparse data 论文题目:基于稀疏数据的深度学习光声断层扫描 论文链接:Deep learning optoacoustic tomography with sparse data | Nature Machine Intelligence 代码链接:GitHub - ndavoudi/sparse_artefact_unet 数据链接…

鸿蒙Harmony实战开发:Arkts构造函数

构造函数 类声明可以包含用于初始化对象状态的构造函数。 构造函数定义如下&#xff1a; constructor ([parameters]) {// ... } typescript 如果未定义构造函数&#xff0c;则会自动创建具有空参数列表的默认构造函数&#xff0c;例如&#xff1a; class Point {x: numbe…