Package: python-zimuzu
字幕组网站(www.zimuzu.tv)接口,命令行工具及更新推送服务Home-page: https://github.com/er1iang/python-zimuzuAuthor: UNKNOWNAuthor-email: UNKNOWNLicense: GPLv3Description: # python-zimuzu[![license](https://img.shields.io/github/license/er1iang/python-zimuzu.svg)](https://github.com/er1iang/python-zimuzu/blob/master/LICENSE)[![license](https://img.shields.io/pypi/v/python-zimuzu.svg)](https://pypi.python.org/pypi/python-zimuzu)[![license](https://img.shields.io/badge/Status-Developing-yellow.svg)](https://github.com/er1iang/python-zimuzu/)---[字幕组网站](www.zimuzu.tv)接口,命令行工具及更新推送服务```$ python zimuzu --helpUsage: zimuzu [OPTIONS] COMMAND [ARGS]...字幕组网站(www.zimuzu.tv)接口Options:-c, --config FILENAME  配置文件路径--cid TEXT             cid--key TEXT             accesskey-v, --verbose          显示更多信息--help                 Show this message and exit.Commands:api     请求字幕组网站接口daemon  字幕组网站资源自动更新服务```## 特性/路线- [x] 提供了命令行调试接口- [x] 支持配置文件导入导出- [x] 支持插件- [x] 提供了字幕组网站资源自动更新服务- [x] 支持自定义更新间隔- [x] 支持更新资源过滤- [x] 字段正则过滤器- [x] 支持更新资源处理- [x] 终端输出处理器- [x] 邮件通知处理器- [ ] 自动下载处理器- [ ] Transmission- [ ] 小米路由器远程下载## 文档### 安装```$pip install python-zimuzu```待更新 ...## FAQ- 为什么使用GPL协议?>字幕组由网络爱好者自发组成,不以盈利为目的,加入仅凭个人兴趣爱好,没有任何金钱实质回报我希望开发者同字幕组一样有分享与奉献精神.- 为什么没提供接口地址?避免被未知力量封杀:no_mouth:- 兼容性如何?保证 Python>=3.3 版本的兼容性, 不做向下兼容, 都什么年代了还用 Python2 ?## 接口说明(update at: 2016-12-03)每个合作方都会分配一个唯一的验证码,在获取接口的时候需要传递合作方ID和验证码接口验证方式有以下两种1. 在传递的参数中包含合作方ID和分配的验证码,适用于通过服务器获取接口数据2. 在APP上使用的接口会验证链接是否有效,需要先加密再- 传递参数必要参数:- cid:接口ID- accesskey:加密后的参数(与未加密时使用的参数名一样)- timestamp:客户端发送请求时的UNIX时间戳(程序会验证该时间与服务器时间,如果超过5分钟就视为无效链接)- client:客户端类型,1-IOS 2-安卓 3-WPaccesskey生成方法:`md5('cid$$accesskey&&timestamp')`变量说明:- cid:分配的接口ID- timestamp:客户端发送请求时的UNIX时间戳- accesskey:分配给接口的密钥数据目前可返回格式包含了json,jsonp,xml,调用方式为传递type参数,如`/resource/today?type=jsonp`poster字段说明:部分接口中除了返回poster字段外,还返回了poster_s,poster_m,poster_b,poster_a四个字段,分别是不同尺寸的海报链接地址season字段说明(仅针对电视剧类型,电影的season字段为0):- 0 前传- 101 单剧- 102  MINI剧- 103 周边资源- 1-100为正常的季度信息- 接口权限验证错误代码说明- 1001 传递的参数错误- 1002 请求链接验证失败- 1003  accesskey错误- 1004 接口未授权- 1011 请求链接验证失败- 1012 接口请求超时- 1021 未登录### APP首页数据接口- 接口地址:/focus/index- 返回数据:```focus_list 焦点图title 标题pic 焦点图地址desc 焦点图简介url 焦点图链接top 今日前十id 影视资源IDcnname 影视资源中文名channel 频道 tv-电视剧,movie-电影area 资源地区category	资源类型publish_year	上映年代play_status 播放状态poster 海报article_list 新闻资讯(第一条资讯因为是手工推荐,只有title,url,poster三个参数返回)id 资讯IDtitle 资讯标题content 资讯内容(只截取了前100个文字)views 浏览数poster 海报dateline 发布时间hot_comment 热门短评id 短评IDauthor 发布者UIDchannel 资源类型,movie-电影,tv-电视剧itemid 影视资源IDcontent 短评内容good 支持数bad 反对数dateline 发布时间nickname 发布者昵称avatar 发布者头像group_name 所属用户组cnname 影视资源中文名score 评分poster 对应的资源海报图```### 影视资源列表- 接口地址:/resource/fetchlist- 传递参数:```channel(可选) 频道 电影:movie,电视剧:tv,公开课:openclassarea(可选) 国家,例如:”美国”,”日本”,”英国”sort(可选) 排序 更新时间update,发布时间pubdate,上映时间premiere,名称name,排名rank,评分score,点击率viewsyear(可选) 年代 最小值为1990category(可选) 影视类型 具体值请参看网站limit(可选) 默认为10个,不能大于20page(可选) 列表页码```- 返回数据:```id 资源IDcnname 中文名enname 英文名remark 说明area 国家format 格式category 类型poster 海报channel 频道lang 语言play_status 播放状态rank 排名score 评分views 浏览数```### 影视资源详情- 接口地址:/resource/getinfo- 传递参数:```id(必选) 资源IDprevue(可选) 是否获取播放档期(只有电视剧才有效) 1-获取share(可选) 是否获取分享信息 1-获取```- 返回数据:```cnname 中文名enname 英文名remark 说明poster 海报play_status 播放状态area 地区category 类型views 浏览数score 评分content 简介prevue 播放档期season 季度episode 集数play_time 播放时间week 星期shareTitle 分享标题shareContent 分享内容shareImage 分享图片shareUrl 分享地址item_permission 为0表示当前用户没有权限下载资源(必须传递uid和token给当前接口),仅限IOS客户端```### 影视资源季度信息- 接口地址:/resource/season_episode- 传递参数:```id(必选) 影视ID```- 返回数据:```season 季度episode 集数该接口会把电视剧的所有季度信息列出来(包括了单剧等),如果影视是电影则返回错误信息例如:{‘season’:7,’episode’:10} 表示第7季总共有10集```### 影视下载资源列表- 接口地址:/resource/itemlist- 传递参数:```id(必选) 影视IDclient(必选) 客户端类型,1-IOS,2-安卓,3-WPuid(必选) 用户UIDtoken(必选) 用户tokenfile(可选) 是否同时获取下载链接 1-获取,0-不获取click(可选) 部分app客户端默认只输出固定的中文字幕,更多的需要再次点击获得,click为1则表示获取更多的数据```- 返回数据(电视剧的数组结构,第一层是季度信息,第二层是格式,第三层是数据列表,电影和公开课的第一层是资源格式,第二层才是数据列表):```id 资源IDname 资源名format 资源格式season 资源季度episode 资源集数size 文件大小dateline 资源添加时间link 当需要同时获取下载链接时该参数有数据,仅限返回电驴和磁力链接info 如果当前用户没有足够权限获取电视剧的资源列表,该参数会输出提示用户最多只能查看资源条数的信息,默认为空```### 影视下载资源列表—不验证用户权限- 接口地址:/resource/itemlist_web- 传递参数:```id(必选) 影视IDfile(可选) 是否同时获取下载链接 1-获取,0-不获取season(必选) 季度episode(必选) 集数```- 返回数据:```id 资源IDname 资源名format 资源格式season 资源季度episode 资源集数size 文件大小dateline 资源添加时间link 当需要同时获取下载链接时该参数有数据,仅限返回电驴和磁力链接info 如果当前用户没有足够权限获取电视剧的资源列表,该参数会输出提示用户最多只能查看资源条数的信息,默认为空```### 影视资源下载地址- 接口地址:/resource/itemlink- 传递参数:```id(必选) 资源ID```- 返回参数:```address 下载地址way 下载方式     1-电驴  2-磁力   9-网盘    12-城通盘```### 字幕列表- 接口地址:/subtitle/fetchlist- 传递参数:```limit(可选) 数量page(可选) 页码```- 返回数据:```count 字幕总数list 字幕集合id 字幕IDcnname 字幕中文名enname 字幕英文名resourceid 对应的资源IDresource_info 资源详情cnname 中文名enname 英文名poster 海报segment 对应片源source 字幕发布者 zimuzu(字幕组)category 类型lang 语言format 格式remark 备注views 浏览数dateline 发布时间```### 字幕详情- 接口地址:/subtitle/getinfo- 传递参数:```id 字幕ID```- 返回数据:```id 字幕IDcnname 字幕中文名enname 字幕英文名resourceid 对应的资源IDsegment 对应片源source 字幕发布者 zimuzu(字幕组)category 类型file 字幕文件下载地址(如果用户没权限浏览则为空)filename 字幕文件名lang 语言format 格式remark 备注views 浏览数dateline 发布时间protect_expire 字幕下载保护期到期时间(unix时间戳),表示当前字幕处于保护期内,用户不能查看,同时file的值为空,如为0则表示没有保护期或者已过期resource_info 对应的资源信息cnname 中文名enname 英文名poster 海报```### 字幕详情—不验证用户权限- 接口地址:/subtitle/getinfo_web- 传递参数:```id 字幕ID```- 返回数据:```id 字幕IDcnname 字幕中文名enname 字幕英文名resourceid 对应的资源IDsegment 对应片源source 字幕发布者 zimuzu(字幕组)category 类型file 字幕文件下载地址(如果在保护期就不显示)filename 字幕文件名lang 语言format 格式remark 备注views 浏览数dateline 发布时间未找到索引项。protect_expire 字幕下载保护期到期时间(unix时间戳),表示当前字幕处于保护期内,用户不能查看,同时file的值为空,如为0则表示没有保护期或者已过期resource_info 对应的资源信息cnname 中文名enname 英文名poster 海报```### 资讯列表- 接口地址:/article/fetchlist- 传递参数:```newstype news-新闻,report-收视快报,m_review-影评,t_review-剧评,new_review-新剧评测,recom-片单推荐 默认为所有类型limit(可选) 数量page(可选) 页码```- 返回数据:```ID 资讯IDTitle 资讯标题Type 资讯类型 news-新闻,guide-导视,影评-movie_review,剧评-tv_reviewPoster 海报Dateline	发布时间```### 资讯内容- 接口地址:/article/getinfo- 传递参数:```id 资讯ID```- 返回数据:```id 资讯IDtitle 资讯标题content 资讯内容dateline 发布时间poster 海报resourceid 对应的影视资源ID,可能为0,表示没有关联影视资源```### 全站搜索- 接口地址: /search- 传递参数:```k(必选) 搜索关键词st(可选) 搜索类型,resource-影视资源,subtitle-字幕资源,article-资讯以及影评和剧评.如果为空,则在以上三种资源中搜索order(可选) 排序 pubtime发布时间 uptime更新时间    默认为更新时间limit(可选) 每页数量(默认输出20个)page(可选) 页码```- 返回数据:```itemid 对应的资源IDtitle 资源标题type resource-影视资源 subtitle-字幕 article-资讯channel 当type为resource的时候有效,tv-电视剧,movie-电影,openclass-公开课pubtime 发布时间uptime 更新时间```### 美剧时间表- 接口地址:/tv/schedule- 传递参数:```start(必选) 开始时间,标准的时间格式,如:2015-02-03或2015-2-3或20150203end(必选) 结束时间,同上,开始时间和结束时间不能超过31天limit(可选) 返回数量```- 返回数据:```id 电视剧IDcnname 电视剧中文名enname 电视剧英文名season 季度episode 集数poster 海报```### 今日热门排行- 接口地址:/resource/top- 传递参数:```channel(可选) 频道 默认为电影和电视剧的排行榜  tv电视剧 movie 电影limit(可选) 获取数量,默认为5个```- 返回数据:```id 影视IDcnname 中文名channel 频道area 国家category 类型publish_year 发布年份play_status 播放状态```### 今日更新- 接口地址:/resource/today- 返回数据:```resourceid 影视IDname 下载资源名format 格式season 季度episode 集数size 文件大小ways 下载方式集合   1-电驴 2-磁力```### 用户接口#### 用户注册- 接口地址:/user/register- 传递参数:```email 邮箱password 密码(最少八位)nickname 昵称sex 性别 0-密码 1-男 2-女 3-其他source 注册来源 android-安卓客户端,ios-苹果客户端```- 返回数据:```uid 用户UID```#### 用户登录- 接口地址:/user/login- 传递参数:```account 用户账号,可以是邮箱,也可以是昵称password 密码```- 返回数据:```uid 用户uidtoken 登录凭证说明:用户最多再五台设备上登录,如有超出,第一个登录的凭证将被删除```#### 退出登录- 接口地址:/user/logout- 传递参数:```uid 用户uidtoken 用户登录凭证nickname 用户昵称sex 性别 0-保密 1-男 2-女 3-其他email 邮箱userpic 头像group_name 所属用户组```#### 获取当前用户信息- 接口地址:/user/get_info- 传递参数:```uid 用户uidtoken 用户登录凭证```- 返回数据:```uid 用户uidnickname 用户昵称sex 性别 0-保密 1-男 2-女 3-其他email 邮箱userpic 头像group_name 所属用户组```#### 签到状态- 接口地址:/user/sign_status- 传递参数:```uid 用户IDtoken 登录凭证```- 返回数据:```group_name 用户组need_day 升级所需天数last_sign 最近三次登录时间sign_times 连续签到天数```#### 用户签到- 接口地址:/user/sign- 传递参数:```uid 用户IDtoken 登录凭证```- 返回数据:```签到成功status返回1,info是签到成功的提示语group_name 用户组need_day 升级所需天数last_sign 最近三次登录时间sign_times 连续签到天数```#### 获取收藏列表- 接口地址:/fav/fetchlist- 传递参数:```ft 收藏类型 tv-电视剧,movie-电影,openclass-公开课 默认为空page 页码limit 每页数量uid 用户IDtoken 登录凭证```- 返回数据:```count:收藏总数list 收藏列表itemid 资源IDposter 资源海报channel 资源类型tv,movie,openclassarea 资源地区cnname 资源中文名enname 资源英文名category 资源类型publish_year	发布年代remark 说明play_status 播放状态premiere 首播日期updatetime 更新时间prevue 播放时间表,可能为空```#### 找回密码- 接口地址:/user/forget- 传递参数:```email 邮箱账号```- 返回数据:```status-返回状态,info-提示信息,操作成功后回提示用户去邮箱查看找回密码的链接```#### 收藏状态- 接口地址:/fav/check_follow- 传递参数:```id 影视资源ID```- 返回数据:```data 1-已收藏 0-未收藏```#### 收藏资源- 接口地址:/fav/follow- 传递参数:```id 资源ID```- 返回数据:```status为1则表示操作成功```#### 取消收藏- 接口地址:/fav/unfollow- 传递参数:```id 资源ID```- 返回数据:```status为1则表示操作成功```### 短评接口#### 获取短评短评接口是全站短评通用的接口,不再对影视或字幕等做单独的接口.无论当前用户是否登录,调用短评接口都需要uid和token两个参数返回的参数中status为1,则表示返回正常,否则会返回失败原因,其他短评接口相同- 接口地址:/comment/fetch- 传递参数:```channel 频道,article-资讯,openclass-公开课,tv-电视剧,movie-电影,subtitle-字幕itemid 对应的资源IDpagesize 每页数量page(可选) 页码,默认为最后一页```- 返回数据:```count 短评总数pageCount 总页码数page 当前页数pagesize 每页短评数list 短评数组id 短评IDauthor 发布人UIDnickname 发布人昵称avatar 发布人头像content 短评内容good 支持数bad 反对数dateline 短评发布时间hot 1-热门短评,只有在page为第一页,最后一页或者未输入值的时候才有数据reply 该短评的回复评论,返回的参数与上面类似avatar 头像group_name 所属用户组```#### 保存短评- 接口地址:/comment/save- 传递参数:```channel 频道,article-资讯,openclass-公开课,tv-电视剧,movie-电影,subtitle-字幕itemid 对应的资源IDcontent 短评内容replyid 如果是回复短评,则为对应的短评ID,否则为0```#### 更新短评- 接口地址:/comment/update- 传递参数:```commentId 短评IDcontent 短评内容```#### 删除短评- 接口地址:/comment/delete- 传递参数:```id 短评ID```#### 支持短评- 接口地址:/comment/good- 传递参数:```id 短评ID```#### 反对短评- 接口地址:/comment/bad- 传递参数:```id 短评ID```### 网站配置以下接口都不需要权限验证,可以直接访问获取#### 网站全局参数- 接口地址:/config/app#### 资源类型- 接口地址:/config/resource_category#### 资源地区- 接口地址:/config/resource_area#### 资源格式- 接口地址:/config/resource_format#### 资源语言- 接口地址:/config/resource_lang#### 资源电视台- 接口地址:/config/resource_tv#### 广告内容- 接口地址:/ad- 返回数据:```index 首页resource_list 影视资源列表resource_show 影视资源详情页resource_file_show 影视资源文件详情schedule 时间表subitlte_show 字幕详情页sign 签到页fav 我的收藏以上每个参数又对应了link和pic两个,分别为广告链接和广告图片```#### 版本检查- 接口地址:/version/check- 传递参数:```vcode:版本号,使用整形数字```- 返回数据:```need_update:是否需要更新 true-需要,false-不需要download_url:下载地址version:最新版本号content:更新信息```### 0.0.1 (20161209)- 项目初始化Keywords: zimuzu,api,sdk,servicePlatform: anyClassifier: Development Status :: 3 - AlphaClassifier: Intended Audience :: DevelopersClassifier: Topic :: Software Development :: SDKClassifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)Classifier: Programming Language :: Python :: 3Classifier: Programming Language :: Python :: 3.3Classifier: Programming Language :: Python :: 3.4Classifier: Programming Language :: Python :: 3.5Requires-Python: >=3.3