当前位置: 首页 > article >正文

过滤及提取电影资源名小算法(初级方案)

这两天干了件自己觉得很有意思的事情——

 

互联网上各个视频网站,对电影资源的命名千奇百怪,比如

 

《阿凡达》高清版在线观看、西游记新版中文字幕(暑期必看!)、阿里巴巴与四十大盗拍摄花絮 ……

 

如果我们要将这些信息“数字化”,提取到我们的数据库中,则这样的垃圾命名会给我们带来很大的麻烦。

 

于是,我写了一个程序,简单的对这些垃圾信息进行处理。尽量提取出正确的电影名,并且在之前的电影名中提取一些该电影相关数据。比如 “阿里巴巴与四十大盗拍摄花絮”这样的,我们就需要知道它并不是一个电影的正片资源,而是花絮,它的影片名是 “阿里巴巴与四十大盗”。

 

OK,废话少说,开始进入正题。

 

首先是调研:

 

我粗略的看了一下各个网站爬虫程序爬回来的结果,比较乱的是 openv(天线视频)和优酷。

 

大量出现的一些垃圾字段 如“首映”、“独家首播”、“最新”……

 

然后还有一些情况是,比如 “XXX第X集”、“XXXX(韩剧)”、“XXXX(未删减版)”、“XXXX(xxx英文名)……

 

那么就是两种情况,对于垃圾字段,我们无情的删除之。对于这种有用的字段,我们需要先从里面提取出信息,然后再将其删除。

 

 

大体算法流程如下:

 

原始字符串 -> 删除垃圾字段 -> 截取有用信息 -> 整理字符串 -> 结果。

 

我统计的垃圾字段有如下:

 

在线观看
首映 首款
网络独家首播)
暑期必看
(配音) (配音)
最新 
(电视) (电视)
(电视剧) (电视剧)
(韩剧) (韩剧)

 ……

 

有用的信息如下:

 

未删减版 完整版 —— 可以确定电影是正片
高清版 高清全集 高清 枪版  —— 确定电影的质量
韩语版 粤语版 国语版 中文版 —— 确定语言类型
主题曲MV —— 确定资源类别
电影版 电视剧版 —— 确定类型
超长片花 片花 幕后花絮 花絮 —— 确定资源类别
限制级 —— 限制级别
(第X集)—— 电视剧集数
精彩预告 全长预告片 先行版预告片 预告片1 预告片2 预告片3 ... 预告片 宣传片 制作特辑 —— 资源类别

(XXXXXXXX) —— 很可能是电影的别名或者英文名之类的,这里我认为超过三个中文字符(6个英文)则是别名。(否则很可能是“(上)”、“(上集)”之类的,这需要属于影片字段。比如赤壁(上)和赤壁(下)就是不同的电影。

……

 

最后整理:

去掉() ()  []等无内容的符号,因为其里面的内容已经在之前被提取或者删除

去掉左右空格

 

然后开始编码,编码的话还是用擅长处理文本的脚本语言,我用的是PHP。

 

之后测试结果还是比较准确的。

 

这个方法比较初级,之后我会要考虑有更好、更智能的方案。大致想法是要先建立一个电影名的词汇库,然后自训练。嗯……今后再说。

 

 

附相关代码

 

 

http://www.lryc.cn/news/2420734.html

相关文章:

  • 淘宝抢拍器 chrome extension实现
  • 数据库安全性最佳实践:防护数据泄露和攻击的方法
  • 移动端设置固定比例的盒子,让图片铺满盒子,并设置默认图片
  • 使用ApexSQLLog对SQL Server数据库进行数据恢复
  • NouveauParfum
  • 友思特新品 | 多光谱与高光谱相机:基于随心而定的可调谐滤光片技术
  • 外贸独立站可获取流量的渠道有哪些?外贸网站引流真的那么难吗?- 【飞鱼SEO】
  • MATLAB作图方法与技巧
  • python图像模糊处理_Python图像处理,照片去色、翻转、模糊、缩略图统统搞定
  • 神之浩劫2登不上/连不上/进不去游戏/游戏进不去的解决办法
  • Zookeeper--集群及相关概念
  • 博客 Gif 动态图制作 - 插入gif动态图 GifCam
  • 地图之美(地图制图)
  • 2024年第二十一届 五一杯 (A题)大学生数学建模挑战赛 | 多目标优化问题,深度学习分析 | 数学建模完整代码解析
  • 高数15种常见特殊曲线:星形线、心形线、摆线、对数螺线、双曲螺线、阿基米德螺线、伯努利双纽线、三叶玫瑰线、四叶玫瑰线、六叶玫瑰线、三次抛物线、半立方抛物线、箕舌线、蔓叶线、笛卡儿叶形线、概率曲线
  • 06 Oracle数据是怎么存储的
  • 当 IDENTITY_INSERT 设置为 OFF 时,不能为表 ‘Users‘ 中的标识列插入显式值
  • python之爬虫爬取VIP蔬菜网农产品价格行情(使用requests库 + HTML)
  • 01、java、jdk、jre三者之间的区别与联系(包含java环境 配置)
  • APM —全链路追踪
  • 混合密集网络(Mixture Density Networks)
  • 『现学现忘』Git后悔药 — 34、git commit --amend 命令
  • 安卓开发:安卓应用上架主流平台汇总
  • Linux bind函数详解
  • 华为资深工程师带你了解华为七大根技术
  • FastTrack协议
  • 提升效率!技术宅、学生党必备!大学四年使用的几十个高效工具都在这里了
  • 详解hashcode(hashcode与equals)
  • HttpClient的post和get请求
  • 高版本msado15.dll编译的程序读取access在低版本系统下报错空指针的问题(错误码:0x80004003)