电影文件名称分析,该怎么做?

2014-12-02 16:46:21 +08:00
 tony1016
我在做一个程序,可以分析一堆下载的电影文件,并匹配上封面和介绍等内容。问题是,从乱七八糟的电影文件名中,如何提取出正确的电影中文名或者英文名?
10173 次点击
所在节点    程序员
26 条回复
webflier
2014-12-02 17:01:50 +08:00
参考plex,xbmc的提取规则。目前下载的电影/连续剧基本都能识别
saintw
2014-12-02 17:02:33 +08:00
这种东西有数据库的吧。
比如:
https://www.themoviedb.org/

话说你是要做一个XBMC?
tony1016
2014-12-02 19:10:43 +08:00
@webflier
@saintw plex和xmbc目前对于中国国内这种中英混合,不规则的文件,识别率非常低。一般来说,如果英文在前的,基本可以。但如果中文名称在前,甚至社区名称在前的,基本没戏。但是,我发现小米盒子和迅雷云播放,其识别率都超级高。所以我在思考他们是怎么做的。
to @saintw ,我想做的东西呢,别xbmc更轻一些,甚至初期可能没有播放功能,仅仅是影片整理和重命名等功能,可以调用第三方的播放器播放。这样大家在一堆片子里选片子,就方便很多
chintj
2014-12-02 19:36:35 +08:00
关注。我的情况是从pt、论坛(包括人人)还有ed2k上一些命名更乱的文件混在一起,有中文有英文,基本上按电影、剧集、视频等等简单分开。积累很长时间,懒得收拾。看看有什么好的方法
tony1016
2014-12-02 20:06:51 +08:00
以下是思路:
1.分词,用特殊符号作为关键点,比如
梦幻天堂·龙网(lwgod.com).720p.沙漠驼影.踪迹-->梦幻天堂|龙网|lwgod|com|720p|沙漠驼影|踪迹
The.Fifth.Estate.2013.危机解密.双语字幕.HR-HDTV.AC3.1024X576.x264-->The|Fifth|Estate|2013|危机解密|双语字幕|HR|HDTV|AC3|1024X576|x264

2.最佳组合:
英文优先:多个英文单词相连的组合作为一个最优解,如The|Fifth|Estate
中文次之:以最长中文为最优解,如 梦幻天堂 或者 沙漠驼影

3.时间校验
寻找具有19xx或者20xx的4位数字,验证tmdb库中关于找到片子的上映时间来相互对比,如果bingo,则是最优解
tony1016
2014-12-02 20:12:59 +08:00
又想到一个:首字母大写的分词,可能性更高
Atu
2014-12-02 20:15:48 +08:00
@tony1016 坐等MAC版
meta
2014-12-02 21:52:10 +08:00
这个是和什么匹配,如果数据库在自己这里的话,可以把数据库中的电影名字做成一棵字典树作为数据的索引,然后就好匹配了。
fenglai
2014-12-03 01:27:12 +08:00
期待一下,现在htpc真没啥好用并且快捷方便的播放系统,lz要做就提些意见
分类识别必须做好 lz正在努力
界面ui最好符合遥控操作方式,兼容遥控器
必须支持源码输出,能过点亮功放dts dtshd 杜比音效
其实国内有个叫猫范的做的还不错,还能像射手影音那样自动下载字幕,应该是xbmc改的,但是它和xbmc一样,不能源码输出,对于接功放家庭影院的玩家来说,非常鸡肋。
Sylv
2014-12-03 03:12:12 +08:00
我写了个脚本运行在 NAS 上,来整理电影,并补全电影中文信息和海报,以供 XBMC 显示和播放(因为 XBMC 的各种中文削剥器都不太好用)。
我的做法是先过滤掉文件名中任何括号内的内容,一般里面都是组名网站名。然后通过文件名中的年份来分割,一般在年份前的都是电影名(可能会包括中文和英文名),年份后的一般就是视频分辨率之类的。然后用年份和原始电影名通过豆瓣 api 搜索到正确对应的电影,配合年份的话成功率能有 90%,这样就能获取到正确的电影中外文名和其它电影元数据。
然后把从豆瓣获取到的信息写成供 XBMC 读取的 XML 文件 movie.nfo,再从豆瓣下载对应海报和剧照,这样 XBMC 就能显示出完善的中文电影信息。最后把管理和播放的任务交给 XBMC。
Sylv
2014-12-03 03:20:14 +08:00
@fenglai XBMC 可以源码输出的,在我这是可以点亮功放的。但我一般是外挂 PotPlayer 来播放,对 ass 字幕支持会更好点。
tony1016
2014-12-03 09:20:30 +08:00
@Sylv 感谢,这个非常有帮助
tony1016
2014-12-03 09:24:35 +08:00
@meta 和tmdb匹配,在线的,多次匹配速度会很慢,所以最好找到规律后一次匹配
tony1016
2014-12-03 09:26:25 +08:00
@fenglai htpc没怎么玩过,第一波肯定是mac版,之后考虑拿node-webkit改个通用版。至于播放功能,我还是倾向于调用第三方播放,毕竟太专业。但是我考虑研究一下dlna,因为这个在所有的播放器中,都没有考虑过
Sylv
2014-12-03 09:48:43 +08:00
Mac 下有个从 IMDB 和 RottenTomato 等网站匹配电影信息和海报的电影管理软件叫 ViMediaManager,我用它配合我的脚本来补全电影信息,很好用。这个软件是开源的,你可以参考下。
http://mariusth.heliohost.org/vimediamanager/
tony1016
2014-12-03 10:24:15 +08:00
@Sylv 试了一下,功能上确实不错,就是自动匹配能力比较差了,看来要做,那卖点必须是自动匹配能力
Sylv
2014-12-03 11:12:28 +08:00
@tony1016 匹配功能是不太强,所以我都是先用脚本通过豆瓣找到对应的 IMDB 编号,再用这个软件补全各种 fanart 、预告片和各站评分,这部分功能这个软件比较完善
tony1016
2015-01-06 12:01:49 +08:00
预览版开发完了,大家试试
tony1016
2015-01-06 13:15:02 +08:00
@webflier
@saintw
@chintj
@Atu
@meta
@fenglai
@Sylv

预览版开发好了,试试吧
Sylv
2015-01-06 13:28:58 +08:00
打开崩溃

Dyld Error Message:
Library not loaded: @rpath/libPythonic.dylib
Referenced from: /Users/USER/Downloads/MovieChooser.app/Contents/MacOS/MovieChooser
Reason: image not found

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/150965

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX