Closed betaxab closed 3 months ago
现在账户业务什么的,已经合并到 U-NEXT 了,可以去除掉它减少检查量。
https://zh.wikipedia.org/zh-cn/Paravi
创建ID:
curl 'https://platform-api.tver.jp/v2/api/platform_users/browser/create' \ -H 'accept: */*' \ -H 'accept-language: zh-CN,zh;q=0.9' \ -H 'cache-control: no-cache' \ -H 'content-type: application/x-www-form-urlencoded' \ -H 'dnt: 1' \ -H 'origin: https://s.tver.jp' \ -H 'pragma: no-cache' \ -H 'priority: u=1, i' \ -H 'referer: https://s.tver.jp/' \ -H 'sec-ch-ua: "Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-platform: "Windows"' \ -H 'sec-fetch-dest: empty' \ -H 'sec-fetch-mode: cors' \ -H 'sec-fetch-site: same-site' \ -H 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36' \ --data-raw 'device_type=pc'
得到回复:
{ "api_version": "v2", "code": 0, "message": "", "type": "hash", "result": { "platform_uid": "371a97a6b4754b4494c2212c5c2105ae3dca", "platform_ad_uuid": "b7ed1fc0-d3aa-4736-bcea-1ea5160a1bd2", "platform_token": "90wlo3rxe9lcu2jp63lj548iuzcwxgk4a435poi9", "browser_id": "wpuzg300cxsj2fg8ljjdz4llqde0h29o04h2", "device_type": "pc", "agreement_version": "" } }
取得正在播放的剧集:
curl 'https://platform-api.tver.jp/service/api/v1/callHome?platform_uid=371a97a6b4754b4494c2212c5c2105ae3dca&platform_token=90wlo3rxe9lcu2jp63lj548iuzcwxgk4a435poi9&require_data=mylist%2Cresume%2Clater' \ -H 'accept: */*' \ -H 'accept-language: zh-CN,zh;q=0.9' \ -H 'origin: https://tver.jp' \ -H 'priority: u=1, i' \ -H 'referer: https://tver.jp/' \ -H 'sec-ch-ua: "Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-platform: "Windows"' \ -H 'sec-fetch-dest: empty' \ -H 'sec-fetch-mode: cors' \ -H 'sec-fetch-site: same-site' \ -H 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36' \ -H 'x-tver-platform-type: web'
得到一个完整的播放列表,结果取电视剧第一个值:
ep88pp5gmv
取得该剧集回放信息:
curl 'https://statics.tver.jp/content/episode/ep88pp5gmv.json' \ -H 'accept: */*' \ -H 'accept-language: zh-CN,zh;q=0.9' \ -H 'origin: https://tver.jp' \ -H 'priority: u=1, i' \ -H 'referer: https://tver.jp/' \ -H 'sec-ch-ua: "Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-platform: "Windows"' \ -H 'sec-fetch-dest: empty' \ -H 'sec-fetch-mode: cors' \ -H 'sec-fetch-site: same-site' \ -H 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36'
得到 accountID = 4031511847001 得到 playerID = mdNymJtwL 得到 videoID = 得到 videoRefID = 25092_2062332_1000074570
如果剧没有 videoRefID,则需要根据 videoID ,借助 brightcove 的另一个 API 取得回放。
curl 'https://players.brightcove.net/4031511847001/mdNymJtwL_default/index.min.js' \ -H 'Accept: */*' \ -H 'Accept-Language: zh-CN,zh;q=0.9' \ -H 'Cache-Control: no-cache' \ -H 'Connection: keep-alive' \ -H 'DNT: 1' \ -H 'Pragma: no-cache' \ -H 'Referer: https://tver.jp/' \ -H 'Sec-Fetch-Dest: script' \ -H 'Sec-Fetch-Mode: no-cors' \ -H 'Sec-Fetch-Site: cross-site' \ -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36' \ -H 'sec-ch-ua: "Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-platform: "Windows"'
如果得不到 videoRefID,则需要得到 deliveryConfigId。
结果取 policy_key:
BCpkADawqM2N0e6IdrmQn-kEZJ0jRi-Dlm0aUZ9mVF2lcadunJzMVYD6j_51UZzQ3mXuIeV8Zx_UUvbGeeJn73SSrpm0xD7qtiKULPP2NEsp_rgKoVxVWTNZAHN-JAHcuIpFJT7PvUj6gpZv
最后得结果(有 videoRefID 的剧):
curl 'https://edge.api.brightcove.com/playback/v1/accounts/4031511847001/videos/ref%3A25092_2062332_1000074570' \ -H 'accept: application/json;pk=BCpkADawqM2N0e6IdrmQn-kEZJ0jRi-Dlm0aUZ9mVF2lcadunJzMVYD6j_51UZzQ3mXuIeV8Zx_UUvbGeeJn73SSrpm0xD7qtiKULPP2NEsp_rgKoVxVWTNZAHN-JAHcuIpFJT7PvUj6gpZv' \ -H 'accept-language: zh-CN,zh;q=0.9' \ -H 'origin: https://tver.jp' \ -H 'priority: u=1, i' \ -H 'referer: https://tver.jp/' \ -H 'sec-ch-ua: "Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"' \ -H 'sec-ch-ua-mobile: ?0' \ -H 'sec-ch-ua-platform: "Windows"' \ -H 'sec-fetch-dest: empty' \ -H 'sec-fetch-mode: cors' \ -H 'sec-fetch-site: cross-site' \ -H 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36'
成功结果输出:
{ "thumbnail": "https://cf-images.ap-northeast-1.prod.boltdns.net/v1/static/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/d68606fa-475b-4d44-aa94-8cdce054c479/160x90/match/image.jpg", "thumbnail_sources": [ { "src": "https://cf-images.ap-northeast-1.prod.boltdns.net/v1/static/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/d68606fa-475b-4d44-aa94-8cdce054c479/160x90/match/image.jpg" } ], "description": "花咲舞(今田美桜)と相馬健(山本耕史)の次なる臨店先は、山間の静かな温泉地にある眠山支店。老舗旅館の社長から、融資がおりずに困っていると相談を受けた二人は、支店長が納得する事業計画書を作成するために奔", "tags": [], "cue_points": [], "custom_fields": { "content_id": "3a8129ce1d5e4478a5eab4f6dee556ff", "guid": "3a8129ce1d5e4478a5eab4f6dee556ff", "programkey": "hanasakimai2024" }, "account_id": "4394098882001", "sources": [ { "codecs": "avc1,mp4a", "ext_x_version": "3", "src": "https://manifest.prod.boltdns.net/manifest/v1/hls/v3/aes128/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/10s/master.m3u8?fastly_token=NjY2NDY1M2RfMTFjYjlmNmY2OGEzZDkyMDQ3N2VkMjQwNjFiYWRlMmMwNmUwYzJiNzFjNjg3ZDI4YjNkODM1NGJjZDA5OTU2Mg%3D%3D", "type": "application/x-mpegURL" }, { "codecs": "avc1,mp4a", "ext_x_version": "4", "src": "https://manifest.prod.boltdns.net/manifest/v1/hls/v4/aes128/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/10s/master.m3u8?fastly_token=NjY2NDY1M2RfY2Q3ZjJkM2UzNmRiMDNmYzIxOGU0YWRlNDI3ZTkzNGI1NGQzNDAzNmE4MWM3NGNiZmMzNWY5MTI1YTc1ZmM5ZQ%3D%3D", "type": "application/x-mpegURL" }, { "codecs": "avc1,mp4a", "ext_x_version": "5", "src": "https://manifest.prod.boltdns.net/manifest/v1/hls/v5/aes128/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/10s/master.m3u8?fastly_token=NjY2NDY1M2RfZGE2YjY1NzJhNDk2MTUyMTc0MDlmMDNkNzMzYjY3YWVmOTJhM2FkZmJlMmMwODEzODI1YWY3Yzk1NmIwNGEzNA%3D%3D", "type": "application/x-mpegURL" }, { "codecs": "avc1,mp4a", "profiles": "urn:mpeg:dash:profile:isoff-live:2011", "src": "https://manifest.prod.boltdns.net/manifest/v1/dash/live-baseurl/clear/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/2s/manifest.mpd?fastly_token=NjY2NDY1M2RfZWMwYzlhMjUzNTZhOWMwZTBiMDVlOGE0Y2UyMTdiZmU0OWZlMDc4NWIyZGIzNTZmMWI4MTNhOTVmODEwNjM2ZA%3D%3D", "type": "application/dash+xml" } ], "name": "花咲舞が黙ってない 5月11日(土)放送分 第5話 湯けむりの攻防!?", "reference_id": "3a8129ce1d5e4478a5eab4f6dee556ff", "long_description": null, "duration": 2698176, "economics": "AD_SUPPORTED", "text_tracks": [ { "id": null, "account_id": "4394098882001", "src": "https://manifest.prod.boltdns.net/thumbnail/v1/4394098882001/bcaceb3d-e864-48a7-b85c-c5319d726272/6d6b2f54-ae9b-4a9a-9480-9ad8aba6d24b/thumbnail.webvtt?fastly_token=NjY2NDY1M2RfNzE4N2IxMDVkNWMxZGJlYWEyODNkY2FmNGVjZjEzMWY1NTQ0MGE5OWFmOTFmZGE1Y2EwMzEyZTE0MmI5ZDE0MQ%3D%3D", "srclang": null, "label": "thumbnails", "kind": "metadata", "mime_type": "text/webvtt", "asset_id": null, "sources": null, "default": false, "width": 480, "height": 270, "bandwidth": 243 } ], "published_at": "2024-05-11T06:46:27.187Z", "created_at": "2024-05-11T06:46:27.194Z", "updated_at": "2024-05-11T07:42:52.194Z", "offline_enabled": false, "link": null, "id": "6352726465112", "ad_keys": null }
拦截输出:
[{"client_geo": "hk", "error_subcode": "CLIENT_GEO", "error_code": "ACCESS_DENIED", "message": "Access to this resource is forbidden by access policy."}]
成功结果:
{ "media": { "media_id": 116616, "uuid": "acb928a8-4bd4-4c46-a537-34c5c02f7477", "name": "159009_1:\u767d\u66ae\u306e\u30af\u30ed\u30cb\u30af\u30eb \u300c\u7b2c\uff11\u8a71\u300d", "ovp_id": 1, "ovp_video_id": "20521dd42a224c83b06268163ae7ee4c", "description": "\u4eba\u6c17\u6f2b\u753b\u5bb6\u3086\u3046\u304d\u307e\u3055\u307f\u306e\u30d2\u30c3\u30c8\u4f5c\u3092\uff37\uff25\uff33\uff34\uff0e\u306e\u795e\u5c71\u667a\u6d0b\u4e3b\u6f14\u3067\u6620\u50cf\u5316\uff01\u30aa\u30ad\u30ca\u30ac\u3068\u547c\u3070\u308c\u308b\u4e0d\u8001\u4e0d\u6b7b\u306e\u5b58\u5728\u3092\u5de1\u308b\u3001\u6975\u4e0a\u306e\u30df\u30b9\u30c6\u30ea\u30fc\u30a8\u30f3\u30bf\u30fc\u30c6\u30a4\u30f3\u30e1\u30f3\u30c8\uff01", "copyright": null, "thumbnail_image_url": null, "thumbnail_gif_url": null, "thumbnail_tile_urls": null, "publish_start_at": "2024/03/14 17:09:25", "publish_end_at": null, "publish_status": 4, "delivery_start_at": null, "delivery_end_at": null, "drm_type": 0, "allow_direct_access_flg": true, "authenticate_flag": false, "encode_type": 1, "values": { "file_id": "L2401787", "notice_id": 8482, "content_id": "159009", "sound_code": "1", "rating_code": null, "video_skips": null, "material_url": null, "picture_code": "5", "tech_checked": true, "carry_in_code": 1, "file_uploaded": true, "language_code": "5", "material_code": "P19011000101", "output_result": false, "priority_type": "1", "angle_position": 0, "material_title": "\u767d\u66ae\u306e\u30af\u30ed\u30cb\u30af\u30eb", "operation_checked": true, "file_ingest_status": 8, "sound_capture_code": "1", "opening_end_position": 0, "ending_start_position": 0, "preview_complete_date": "2024-03-18T00:00:00+09:00", "live_channel_create_flag": false, "file_ingest_encode_error_message": "" }, "thumbnail_url": null, "thumbnail_copyright": null }, "playback_rule": { "playback_rule_id": null, "enable_seek_flag": true, "enable_chromecast_flag": true, "enable_airplay_flag": true, "enable_mirroring_flag": true, "enable_external_monitor_flag": true, "enable_catchup_flag": true, "enable_start_over_flag": true, "enable_pause_flag": true, "enable_background_play_flag": true, "enable_screen_capture_flag": true, "enable_playback_rate_change_flag": true, "enable_offline_play_flag": true, "maximum_bitrate": 0, "minimum_bitrate": 0, "device_rule": null, "enable_drm_rule": null, "required_hdcp_level": "1.0", "interval_to_reauth": null, "enable_pip_flag": true }, "playback_session_id": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDA3NTUzNDAsImlhdCI6MTcxNTU3NTA3MCwiaXNfZ3JvdXAiOjAsIm1heCI6MCwibWV0YV9tYXgiOjAsIm1pZCI6MTIzMDczLCJuYmYiOjE3MTU1NzUwNjUsInBzZ2siOiJkZWZhdWx0IiwicHNpZCI6IjE4NThlMTI5NmNhOTRhZWViZjdlZWJmM2EzYTFjOGNiIiwicmlkIjowLCJzdWIiOiIiLCJ0ZCI6bnVsbCwidXVpZCI6IiIsInZkZ2lkIjoiZGVmYXVsdCIsInZkaWQiOiIifQ.57GIcX90tgUrgW2KvuLGpnAL91m3jKEBNenEeWZf6m7WCNpSJivF4WhOrGSdCQZClHuVTX8OxjMS_-OgyG27lA", "playback_validity_end_at": "2025/02/28 23:59:00", "tracking": true, "log_params": { "media_id": 116616, "meta_id": 123073, "psgk": "default", "url": "", "cp": 1, "dc": 1, "a": 1, "vuid": "20d6ac7daa9170a1d762ca49cd46f835", "fl": 0, "psid": "1858e1296ca94aeebf7eebf3a3a1c8cb" } }
失败,检测到 VPN 结果:
{ "error": { "message": "Unsupported network detected. cannot be accessed from outside Japan and/or connection via VPN and Proxy.", "code": 2055, "type": "Forbidden", "objects": { "meta": { "id": 123073, "name": "\u767d\u66ae\u306e\u30af\u30ed\u30cb\u30af\u30eb 1 \u300c\u7b2c\uff11\u8a71\u300d", "header": "", "description": "\u4eba\u6c17\u6f2b\u753b\u5bb6\u3086\u3046\u304d\u307e\u3055\u307f\u306e\u30d2\u30c3\u30c8\u4f5c\u3092\uff37\uff25\uff33\uff34\uff0e\u306e\u795e\u5c71\u667a\u6d0b\u4e3b\u6f14\u3067\u6620\u50cf\u5316\uff01\u30aa\u30ad\u30ca\u30ac\u3068\u547c\u3070\u308c\u308b\u4e0d\u8001\u4e0d\u6b7b\u306e\u5b58\u5728\u3092\u5de1 \u308b\u3001\u6975\u4e0a\u306e\u30df\u30b9\u30c6\u30ea\u30fc\u30a8\u30f3\u30bf\u30fc\u30c6\u30a4\u30f3\u30e1\u30f3\u30c8\uff01", "thumbnail_id": 83817, "meta_schema_id": 3, "values": { "material_title": "\u767d\u66ae\u306e\u30af\u30ed\u30cb\u30af\u30eb", "title": "\u767d\u66ae\u306e\u30af\u30ed\u30cb\u30af\u30eb", "short_name": "\u300c\u7b2c\uff11\u8a71\u300d", "episode_id_name": "1", "detail_description": "\u539a\u751f\u52b4\u50cd\u7701\u306e \u65b0\u7c73\u8077\u54e1\u30fb\u4f0f\u6728\u3042\u304b\u308a\uff08\u677e\u4e95\u611b\u8389\uff09\u306f\u3001\u7acb\u3061\u5165\u308a\u691c\u67fb\u5148\u3067\u602a\u6b7b\u4e8b\u4ef6\u306b\u906d\u9047\u3059\u308b\u3002\u88ab\u5bb3\u8005\u306f\u4e0d\u8001\u4e0d\u6b7b\u306e\u5b58\u5728\u300c\u30aa\u30ad\u30ca\u30ac\u300d\u2500\u3002\u305d\u3053\u3067\u53c2\u4e8b \u5b98\u306e\u7af9\u4e4b\u5185\uff08\u7af9\u8ca1\u8f1d\u4e4b\u52a9\uff09\u306e\u76ee\u306b\u7559\u307e\u3063\u305f\u3042\u304b\u308a\u306f\u30aa\u30ad\u30ca\u30ac\u3092\u7ba1\u7406\u3059\u308b\u300c\u591c\u9593\u885b\u751f\u7ba1\u7406\u8ab2\u300d\u306b\u7570\u52d5\u3055\u305b\u3089\u308c\u308b\u3053\u3068\u306b\u3002\u4e0a\u53f8\u306e\u4e45\u4fdd\u5712\uff08\u5149\u77f3\u7814\uff09\u306b\u9023\u308c\u3089\u308c\u3001\u3042\u304b\u308a\u304c\u5411\u304b\u3063\u305f\u5148\u306f\u3001\u79c1\u8a2d\u56f3\u66f8\u9928\u300c\u6309\u5bdf\u4f7f\u6587\u5eab\u300d\u3002\u305d\u3053\u3067\u51fa\u4f1a\u3063\u305f\u9752\u5e74\u30fb\u96ea\u6751\u9b41\uff08\u795e\u5c71\u667a\u6d0b\uff09\u3082\u307e\u305f\u300c\u30aa\u30ad\u30ca\u30ac\u300d\u3060\u3063\u305f\u2500\u2500\u3002", "wp_enable_flag": false, "wp_do_flag": false, "communication_area": null, "links": null, "is_multi": false, "badge_statuses": [ 5 ], "badge_text": null, "system_genres": [ 12 ], "soon_to_end_time": "2025/02/25 23:59:00", "download_flag": true, "duration_sec": 1500.053, "related_key": null, "tvod_flag": false, "svod_flag": true, "sv_type": 0, "sv_main": null, "sv_hilight": null, "live_ol_image": null, "live_ol_position": 0, "info_visibility": "non_entitled", "info_type": "snippet", "info_iframe_url": null, "info_snippet": 109, "next_content_text": null, "prev_content_text": null, "program_code": "190110", "episode_id": "001", "material_branch_num": "01", "title_read": "\uff8a\uff78\uff8e\uff9e\uff89\uff78\uff9b\uff86\uff78\uff99", "episode_number_title": null, "short_name_read": "\uff80\uff9e\uff72\uff72\uff81\uff9c", "material_title_read": "\uff8a\uff78\uff8e\uff9e\uff89\uff78\uff9b\uff86\uff78\uff99", "produced_start_year": 0, "sound_capture_code": "1", "rating_code": null, "picture_codes": [ "5" ], "sound_codes": [ "1" ], "language_codes": [ "5" ], "broadcast_status": "1", "streaming_status": 1, "playback_restriction_type": 0, "mentions": [], "introduction": "", "award": null, "omnibus_info": [ { "casts": [ { "id": "1206227", "display_order": "1", "position_title": "\u51fa\u6f14", "cast_name": "\u795e\u5c71\u667a\u6d0b\uff08WEST.\uff09" }, { "id": "1206228", "display_order": "2", "position_title": "\u51fa\u6f14", "cast_name": "\u677e\u4e95\u611b\u8389" }, { "id": "1206229", "display_order": "3", "position_title": "\u51fa\u6f14", "cast_name": "\u7af9\u8ca1\u8f1d\u4e4b\u52a9" }, { "id": "1206230", "display_order": "4", "position_title": "\u51fa\u6f14", "cast_name": "\u9ad8\u6a4b\u52aa" }, { "id": "1206231", "display_order": "5", "position_title": "\u51fa\u6f14", "cast_name": "\u685c\u5ead\u306a\u306a\u307f" }, { "id": "1206232", "display_order": "6", "position_title": "\u51fa\u6f14", "cast_name": "\u6c34\u9593\u30ed\u30f3" }, { "id": "1206233", "display_order": "7", "position_title": "\u51fa\u6f14", "cast_name": "\u7530\u6751\u5065\u592a\u90ce" }, { "id": "1207039", "display_order": "8", "position_title": "\u51fa\u6f14", "cast_name": "\u7247\u5c71\u53cb\u5e0c" }, { "id": "1207040", "display_order": "9", "position_title": "\u51fa\u6f14", "cast_name": "\u539f\u7530\u4f73\u5948" }, { "id": "1207041", "display_order": "10", "position_title": "\u51fa\u6f14", "cast_name": "\u5409\u6751\u754c\u4eba" }, { "id": "1207042", "display_order": "11", "position_title": "\u51fa\u6f14", "cast_name": "\u5de5\u85e4\u9065" }, { "id": "1207043", "display_order": "12", "position_title": "\u51fa\u6f14", "cast_name": "\u77e2\u67f4\u4fca\u535a" }, { "id": "1207044", "display_order": "13", "position_title": "\u51fa\u6f14", "cast_name": "\u9727\u5cf6\u308c\u3044\u304b" }, { "id": "1207045", "display_order": "14", "position_title": "\u51fa\u6f14", "cast_name": "\u5229\u91cd\u525b" }, { "id": "1207046", "display_order": "15", "position_title": "\u51fa\u6f14", "cast_name": "\u6c34\u91ce\u4e45\u7f8e" }, { "id": "1207047", "display_order": "16", "position_title": "\u51fa\u6f14", "cast_name": "\u5927\u6797\u9686\u4ecb" }, { "id": "1207048", "display_order": "17", "position_title": "\u51fa\u6f14", "cast_name": "\u4f0a\u85e4\u6b69" }, { "id": "1207049", "display_order": "18", "position_title": "\u51fa\u6f14", "cast_name": "\u5149\u77f3\u7814" } ], "staffs": [ { "id": "457585", "display_order": "1", "position_title": "\u539f\u4f5c", "staff_name": "\u3086\u3046\u304d\u307e\u3055\u307f\u300c\u767d\u66ae\u306e\u30af\u30ed\u30cb\u30af\u30eb\u300d\uff08\u5c0f\u5b66\u9928\u300c\u30d3\u30c3\u30b0\u30b9\u30d4\u30ea\u30c3\u30c4\u30b3\u30df\u30c3\u30af\u30b9\u300d\u520a\uff09" }, { "id": "457586", "display_order": "2", "position_title": "\u76e3\u7763", "staff_name": "\u4e2d\u5ddd\u548c\u535a" }, { "id": "457587", "display_order": "3", "position_title": "\u76e3\u7763", "staff_name": "\u4f50\u3005\u6728\u8c6a" }, { "id": "457588", "display_order": "4", "position_title": "\u811a\u672c", "staff_name": "\u5c0f\u5c71\u6b63\u592a" }, { "id": "457589", "display_order": "5", "position_title": "\u811a\u672c", "staff_name": "\u5c71\u5d0e\u592a\u57fa" }, { "id": "457590", "display_order": "6", "position_title": "\u811a\u672c", "staff_name": "\u7530\u4e2d\u3057\u304a\u308a" }, { "id": "457591", "display_order": "7", "position_title": "\u97f3\u697d", "staff_name": "\u5bcc\u8cb4\u6674\u7f8e" }, { "id": "457592", "display_order": "8", "position_title": "\u4e3b\u984c\u6b4c", "staff_name": "\u300cFATE\u300dWEST.\uff08ELOV-Label\uff09" }, { "id": "457593", "display_order": "9", "position_title": "\u30d7\u30ed\u30c7\u30e5\u30fc\u30b5\u30fc", "staff_name": "\u9ad8\u6c5f\u6d32\u7fa9\u8cb4" }, { "id": "457594", "display_order": "10", "position_title": "\u30d7\u30ed\u30c7\u30e5\u30fc\u30b5\u30fc", "staff_name": "\u5ee3\u702c\u771e\u5b50" }, { "id": "457595", "display_order": "11", "position_title": "\u30d7\u30ed\u30c7\u30e5\u30fc\u30b5\u30fc", "staff_name": "\u7686\u85e4\u4e00" }, { "id": "457596", "display_order": "12", "position_title": "\u30d7\u30ed\u30c7\u30e5\u30fc\u30b5\u30fc", "staff_name": "\u6b4c\u8c37\u5eb7\u7950" }, { "id": "458496", "display_order": "13", "position_title": "\u5236\u4f5c\u5354\u529b", "staff_name": "\u5171\u540c\u30c6\u30ec\u30d3\u30b8\u30e7\u30f3" } ] } ], "casts": [ 69315, 17102, 12615, 3252, 15575, 15281, 21395, 4285, 29924, 9788, 15577, 27598, 5996, 3628, 17340, 69316, 10489, 815 ], "staffs": [ 69317, 15582, 69318, 15018, 69319, 69320, 3587, 70123, 5258, 3638, 69321, 69322, 3620 ], "musics": null, "match_cards": null, "recording_date": null, "artwork_logokey": null, "artwork_key": null, "artwork_keyb": null, "artwork_keyc": null, "artwork_mh": null, "artwork_mmh": null, "artwork_epi": null, "artwork_pos": null, "artwork_square": null, "oap": null, "chasing_playback": null, "cut_out_delivery": null, "program_type": "", "league": null, "event_season_name": null, "special_program_type": null, "event_stage": "", "event_match_day": null, "event_reg": null, "home_team": null, "away_team": null, "teams": [], "country": null, "jp_players": null, "jp_player_flag": false, "star_players": null, "star_player_flag": false, "good_matchup_flag": [ false ], "good_matchup_reason": "", "live_hours": "", "live_weekday": "", "display_target_flag": false, "rtoaster_session_id": null, "live_archive_flag": false, "broadcast_start_at": null, "broadcast_end_at": null, "production_country_info": {}, "recording_place_info": {} }, "publish_device_rule": null, "publish_status": 4, "delivery_start_at": "2024/02/23 12:00:00", "delivery_end_at": "2025/02/28 23:59:00", "publish_start_at": "2024/02/23 12:00:00", "publish_end_at": "2025/02/28 23:59:00", "created_at": "2024/01/01 08:15:30", "updated_at": "2024/05/13 01:34:56", "deleted_at": null, "type": "media_meta", "access_control": { "ip": [] }, "publish_geo_rule": null, "special_rule": null, "push_rank": 0, "sort": 1001, "import_unique_key": "190110_001_01", "rights_control_type": 10, "ref_id": "C159009", "name_ruby": "\uff80\uff9e\uff72\uff72\uff81\uff9c", "search_flag": true, "enable_inuse_viewing_device_limit": true, "publish_app_rule": null, "delivery_device_rule": null, "delivery_geo_rule": [ "jp" ], "delivery_app_rule": null, "refuse_anonymous_ip_flag": true, "keywords": "", "contents_provider_id": 1, "next_meta_id": 123283, "deleted_at_ts": 0, "require_viewing_device_regist_flag": true, "slug": null, "publish_on_limited_rule": null, "workflow_status": 2, "reviewer_id": null, "review_comment": null, "uuid": "ba987dc0-9341-4a24-85fa-6263fdd34534", "version_id": 120033, "admin_tags": "", "publish_user_status_rule": null, "first_imported_at": null, "last_imported_at": null, "id_in_schema": 159009, "translations": {}, "search_start_at": null, "search_end_at": null, "created_by": 0, "updated_by": 0, "deleted_by": null, "target_min_age": null, "original_id": null, "service": "", "schema_id": 3, "related_roles": null, "related_roles_type": 0, "daily_play_count": 739, "weekly_play_count": 5138, "monthly_play_count": 16452, "daily_user_count": 537, "weekly_user_count": 3685, "monthly_user_count": 11630, "next_manual_meta_id": null, "deep_link_id": null, "contents_provider": { "id": 1, "key": "10001", "name": "WOD\u6a19\u6e96CP", "mail_address": null, "ref_id": "10001", "created_at": "2022/04/15 20:31:07", "updated_at": "2022/04/15 20:31:07", "deleted_at": null, "schema_id": 1, "values": null, "deleted_at_ts": 0, "slug": null, "admin_tags": "", "id_in_schema": null, "created_by": 0, "updated_by": null, "deleted_by": null }, "right_metas": [ { "id": 750469, "right_id": 3, "meta_id": 123073, "created_at": "2024/01/01 08:15:38", "updated_at": "2024/01/01 08:15:38", "deleted_at": null, "sort_number": 0, "strict_validity_start_at": null, "strict_validity_end_at": null, "validity_start_at": null, "validity_end_at": null, "ref_id": null, "publish_start_at": null, "publish_end_at": null, "original_right_meta_id": null, "deleted_at_ts": 0, "created_by": 0, "updated_by": 0, "deleted_by": null, "bubbled_right_meta_id": null, "values": null, "schema_id": null, "auto_sync_flag": false, "right": { "id": 3, "name": "WOWOW \u30aa\u30f3\u30c7\u30de\u30f3\u30c9 \u653e\u9001\u8996\u8074\u767b\u9332\u3042\u308a", "view_term": null, "view_limit_date": null, "created_at": "2022/04/15 20:31:05", "updated_at": "2022/04/15 20:31:05", "deleted_at": null, "execute_device_rule": null, "execute_geo_rule": null, "values": null, "import_unique_key": null, "ref_id": "wod_broadcast", "validity_start_at": null, "validity_end_at": null, "kind": 0, "review_flag": false, "execute_app_rule": null, "schema_id": null, "persistent_flag": false, "deleted_at_ts": 0, "admin_tags": "", "first_imported_at": null, "last_imported_at": null, "translations": null, "id_in_schema": null, "created_by": 0, "updated_by": null, "deleted_by": null, "allow_delay_start_flag": null, "exercise_term": null, "view_start_date": null, "view_term_unit": null, "exercise_term_unit": null, "exercise_priority": 3, "control_type": 30, "tying_rules": null } }, { "id": 750467, "right_id": 2, "meta_id": 123073, "created_at": "2024/01/01 08:15:37", "updated_at": "2024/01/01 08:15:37", "deleted_at": null, "sort_number": 0, "strict_validity_start_at": null, "strict_validity_end_at": null, "validity_start_at": null, "validity_end_at": null, "ref_id": null, "publish_start_at": null, "publish_end_at": null, "original_right_meta_id": null, "deleted_at_ts": 0, "created_by": 0, "updated_by": 0, "deleted_by": null, "bubbled_right_meta_id": null, "values": null, "schema_id": null, "auto_sync_flag": false, "right": { "id": 2, "name": "WOWOW \u30aa\u30f3\u30c7\u30de\u30f3\u30c9 \u6709\u6599", "view_term": null, "view_limit_date": null, "created_at": "2022/04/15 20:31:05", "updated_at": "2022/04/15 20:31:05", "deleted_at": null, "execute_device_rule": null, "execute_geo_rule": null, "values": null, "import_unique_key": null, "ref_id": "wod_paid", "validity_start_at": null, "validity_end_at": null, "kind": 0, "review_flag": false, "execute_app_rule": null, "schema_id": null, "persistent_flag": false, "deleted_at_ts": 0, "admin_tags": "", "first_imported_at": null, "last_imported_at": null, "translations": null, "id_in_schema": null, "created_by": 0, "updated_by": null, "deleted_by": null, "allow_delay_start_flag": null, "exercise_term": null, "view_start_date": null, "view_term_unit": null, "exercise_term_unit": null, "exercise_priority": 2, "control_type": 30, "tying_rules": null } }, { "id": 750465, "right_id": 1, "meta_id": 123073, "created_at": "2024/01/01 08:15:35", "updated_at": "2024/01/01 08:15:35", "deleted_at": null, "sort_number": 0, "strict_validity_start_at": null, "strict_validity_end_at": null, "validity_start_at": null, "validity_end_at": null, "ref_id": null, "publish_start_at": null, "publish_end_at": null, "original_right_meta_id": null, "deleted_at_ts": 0, "created_by": 0, "updated_by": 0, "deleted_by": null, "bubbled_right_meta_id": null, "values": null, "schema_id": null, "auto_sync_flag": false, "right": { "id": 1, "name": "WOWOW \u30aa\u30f3\u30c7\u30de\u30f3\u30c9 \u30c8\u30e9\u30a4\u30a2\u30eb\u7121\u6599", "view_term": null, "view_limit_date": null, "created_at": "2022/04/15 20:31:05", "updated_at": "2022/04/15 20:31:05", "deleted_at": null, "execute_device_rule": null, "execute_geo_rule": null, "values": null, "import_unique_key": null, "ref_id": "wod_trial", "validity_start_at": null, "validity_end_at": null, "kind": 0, "review_flag": false, "execute_app_rule": null, "schema_id": null, "persistent_flag": false, "deleted_at_ts": 0, "admin_tags": "", "first_imported_at": null, "last_imported_at": null, "translations": null, "id_in_schema": null, "created_by": 0, "updated_by": null, "deleted_by": null, "allow_delay_start_flag": null, "exercise_term": null, "view_start_date": null, "view_term_unit": null, "exercise_term_unit": null, "exercise_priority": 1, "control_type": 30, "tying_rules": null } } ], "meta_terms": [], "meta_playback_rules": [], "meta_concurrent_playback_rules": [], "media_meta_medias": [ { "id": 115867, "meta_id": 123073, "media_id": 116616, "created_at": "2024/03/14 17:09:25", "updated_at": "2024/03/14 17:09:25", "sort_number": 1 }, { "id": 110067, "meta_id": 123073, "media_id": 110728, "created_at": "2024/01/01 08:15:45", "updated_at": "2024/03/14 17:09:25", "sort_number": 2 } ], "schema": { "slug": "episode" }, "thumbnail": { "id": 83817, "name": "C159009", "caption": "", "file": "09880fca-2f96-4efa-9efb-5a8902913733.jpg", "copyright": "", "info": { "exif": { "Copyright": "kumiko tsuchiya" }, "size": 330063, "type": "JPEG", "width": 1920, "height": 1080, "mime_type": "image/jpeg", "signature": "13d1bc9c7e01088f5656989d30b85da8e7edfec1aadadd7ed065883354f62e2d", "colorspace": "DirectClass sRGB ", "resolution": "72x72", "aspect_ratio": "16:9" }, "created_at": "2024/02/20 17:49:26", "updated_at": "2024/02/20 17:49:26", "import_unique_key": null, "mime_type": "image/jpeg", "file_store_dir": "uploads/attachment/file/83817", "publish_start_at": "2024/02/20 00:00:00", "publish_end_at": null, "publish_status": 4, "attachment_folder_id": null, "type": "Logica::Attachment::Default", "publish_on_limited_rule": null, "workflow_status": 2, "reviewer_id": null, "review_comment": null, "url": "https://image-proxy.wowow.co.jp/uploads/attachment/file/83817/09880fca-2f96-4efa-9efb-5a8902913733.jpg", "admin_tags": "", "first_imported_at": null, "last_imported_at": null, "created_by": 186, "updated_by": null, "memo": "", "values": null }, "AVAILABILITY_RESULT_REASON_CODES": { "IS_FREE": 1, "IS_MEMBER_ONLY": 2, "NOTFOUND": 3, "FORBIDDEN": 4, "NOT_PUBLISHED": 5, "NOT_DELIVERING": 6, "IS_ENTITLED": 7, "NOT_ENTITLED": 8, "AUTH_REQUIRED": 9, "ENTITLEMENT_SUSPEND": 10, "ENTITLEMENT_SUSPEND_RECURRING_FAILED": 11, "HAS_NO_RIGHTS": 12, "OTHER": 999 } }, "userInfo": {} }, "helperLink": "https://support.wowow.co.jp/answer/62bd39571e5eea9d5b3b5719", "helperLink_message": "\u8a73\u7d30\u306f\u3053\u3061\u3089" } }
Paravi
现在账户业务什么的,已经合并到 U-NEXT 了,可以去除掉它减少检查量。
https://zh.wikipedia.org/zh-cn/Paravi
Tver:
创建ID:
得到回复:
取得正在播放的剧集:
得到一个完整的播放列表,结果取电视剧第一个值:
ep88pp5gmv
取得该剧集回放信息:
得到 accountID = 4031511847001 得到 playerID = mdNymJtwL 得到 videoID = 得到 videoRefID = 25092_2062332_1000074570
如果剧没有 videoRefID,则需要根据 videoID ,借助 brightcove 的另一个 API 取得回放。
如果得不到 videoRefID,则需要得到 deliveryConfigId。
结果取 policy_key:
BCpkADawqM2N0e6IdrmQn-kEZJ0jRi-Dlm0aUZ9mVF2lcadunJzMVYD6j_51UZzQ3mXuIeV8Zx_UUvbGeeJn73SSrpm0xD7qtiKULPP2NEsp_rgKoVxVWTNZAHN-JAHcuIpFJT7PvUj6gpZv
最后得结果(有 videoRefID 的剧):
成功结果输出:
拦截输出:
wowow 测试结果输出:
成功结果:
失败,检测到 VPN 结果: