rosynirvana / douyu_cli

Broken
MIT License
36 stars 6 forks source link

你好,请问解析出来的地址,无法在播放器观看么? #2

Closed lki2019 closed 7 years ago

lki2019 commented 7 years ago

douyu_api.py https://www.douyu.com/431972

douyu_cli-master>douyu_api.py https://www.douyu.com/431972 http://hdl1a.douyucdn.cn/live/431972ruB8xymR9t.flv?wsAuth=98c1334f880b5cfc8ab83a 6ce5ae572e&token=web-douyu-0-431972-7455710c9011383ad93cd0ce413fb55a&logo=0&expi re=0&did=F706B4A7B23B644C180A8C37F55C2662&ver=2017063001

然后把地址放到播放器添加里无法播放,我也做了防自动换行的处理了,还是无法播放

还有从新解析后,直接打开连接也不行

qq 20170711174100

lki2019 commented 7 years ago

qq 20170711174500 打开解析的地址 浏览器上

lki2019 commented 7 years ago

我也试了 mpv 解析出来的地址 也无法播放

rosynirvana commented 7 years ago

每个地址只能访问一次 potplayer不知道,mpv如果编译时开了youtube-dl需要关掉

lki2019 commented 7 years ago

您好,mpv http://hdl1a.douyucdn.cn/live/431972ruB8xymR9t.flv?wsAuth=98c1334f880b5cfc8ab83a 6ce5ae572e&token=web-douyu-0-431972-7455710c9011383ad93cd0ce413fb55a&logo=0&expi re=0&did=F706B4A7B23B644C180A8C37F55C2662&ver=2017063001

这样格式对么?

麻烦您给我个正确的输入格式 谢谢了!

rosynirvana commented 7 years ago

问题有两个,你用的console怎么处理& ? 你用的mpv编译有没有开ykdl_hook ?

mpv --no-ytdl "http://hdl3.douyucdn.cn/live/3484r7TuTFBHB31S.flv?wsAuth=b3abd0236e73f199b6c1c68bae66896f&token=web-douyu-0-3484-52cbf9589f5ca52d42b304e2a5908368&logo=0&expire=0&did=67C4644E5A45142CC442E09FF660141A&ver=2017063001"
lki2019 commented 7 years ago

我详细给您反馈一下。

mpv --no-ytdl "http://hdl3a.douyucdn.cn/live/274874rBT8PhXEwA.flv?wsAuth=c7a598758a5919c2ad25d0 a16c74f520&token=web-douyu-0-274874-a7effb1ebb26b7a0f27923a504bece4b&logo=0&expi re=0&did=6FCA0CCAACBB7496A36F07E5E87D166F&ver=2017063001"
连串英文省略
lki2019 commented 7 years ago
rosynirvana commented 7 years ago

仔细看,你的expire里多了一个空格

那个长字符串换行的博客和win下面控制台应该没什么关系吧我觉得 你需要的应该是这个 https://www.kafan.cn/edu/86611916.html

lki2019 commented 7 years ago

您好,终于搞好了,mpv播放出来了,还是字符串空格之类的问题。 谢谢大神指导, 另外很尴尬的问一句,您这个滚动条在一行的字符串怎么输入的?

qq 20170711221747

还有大神您是用什么命令配合可以直接调用播放器观看呢?

我的意思是 现在不是分2步么

第一步:douyu_api.py https://www.douyu.com/XXX

查询出地址

第二步 mpv --no-ytdl "地址“

请问有什么命令和办法可以直接一步就调出播放器么?比如配合mpv

rosynirvana commented 7 years ago

用markdown的代码引用

以后可能会实现,也可能不会 或许最好的是等youtube-dl把douyu的东西更新了,然后直接用mpv就行

rosynirvana commented 7 years ago

现在可以了,加上一个-r会用mpv播放 mpv的可执行要在path上

lki2019 commented 7 years ago

给力!!!

douyu_api.py -q 1 -r 2371789 -p https://www.douyu.com/2371789

速度超级快就弹出mpv播放视频了!!!!

完美··也不用去折腾长字符串空格的问题了···

http://i2.kiimg.com/1949/0997091e48041e55.jpg


另外请问大神,调用本地播放器看直播搞定了,那么有录制直播视频的命令么??

rosynirvana commented 7 years ago

path上面放一个ffmpeg,然后-s output_filename就行了,README里面已经写了

Justsoos commented 7 years ago

potplayer 是不能用来看斗鱼的,它会自作主张的两次访问同一个 URI,用掉 token,URI 就失效了。 mpv 也有点类似的怪异举动,加 --no-ytdl 一般都能解决

lki2019 commented 7 years ago

@rosynirvana

谢谢大神! douyu_api.py -q 1 -r 2371789 -s 1 https://www.douyu.com/2371789 【录制输出文件格式为MP4】

OK,刚开始录制没反应原来忘记往目录里放一个ffmpeg了,呵呵

恩 现在搞定了,

douyu_api.py -q 1 -r 2371789 -s 1 https://www.douyu.com/2371789 【输出格式只有mp4么?我把文件名字改成1.flv 输出的后者还是.mp4 不知道怎么输出flv后缀的文件,flv可能体积小点吧】

Justsoos commented 7 years ago

另外,貌似斗鱼还有时延校验,用 api 生成 URI 之后,再复制到播放器,就几秒钟延迟,也会造成token失效,后果之一是播放只有10分钟或者15分钟,然后被断开。 最好的方法之一是命令嵌套 python douyu_api.py http://www.douyutv.com/XXX | xargs mpv --no-ytdl

lki2019 commented 7 years ago

@Justsoos

7月8号 我还可以在potplayer 看斗鱼的,就是直接用ykdl解析出来的地址,然后potplayer 添加地址播放的

9号开始就不行了,几个月前我也是这么用potplayer 看斗鱼的!

不知道现在为什么看不了了,提示无法播放 服务器关闭之类的

rosynirvana commented 7 years ago

现在没什么理由不用mp4吧?

flv和mp4录下来体积是非常将近的,只是音画数据怎么组织的差别

lki2019 commented 7 years ago

@rosynirvana

恩 mp4也挺好,直接传优酷 省的转码了,以前用录像软件生成flv文件传优酷有时候音画不同步,

Justsoos commented 7 years ago

除非 potplayer 改了行为 …… 除非你记错了时间 ……

事实是,potplayer 一直没改过这个行为。斗鱼这么玩已经有至少一年以上了。更不可能让你【添加地址】,斗鱼的播放地址失效条件非常多,不可能被【收藏】再用。

lki2019 commented 7 years ago

@Justsoos

这个我是不可能记错的,千真万确几个月前我一直是这么看的, 8号我也用potplayer 这么看的,因为我在Q群和别人截图过的,

我翻看聊天记录确认的,没记错,

就是从9号开始这样把地址添加到potplayer 看不了了。我也不知道什么原因

之前一直是用ykdl解析房间地址 然后potplayer 添加这么看的!

potplayer 我还是那个版本 没变过,

那只有斗鱼可能改了什么地方了,具体我也不清楚

Justsoos commented 7 years ago

你说的是移动端的 m3u8 ,斗鱼对那个流处理比较随意。 那个不在我们讨论范围内。 这里解出来的是包括最高画质的 flv 流,这些流反盗播处理非常复杂。

lki2019 commented 7 years ago

@Justsoos

我是PC端操作的啊

电脑上用ykdl解析房间地址 然后potplayer 添加这么看的!

不是移动端,

- format:        TD
  container:     flv
  video-profile: 超清
# download-with: ykdl --format=TD [URL]

Real urls: http://hdla.douyucdn.cn/live/67373rAockooTkRB_2200.flv?wsAuth=15de8c13667bb6cd2290d90940c3f8d2&token=web-douyu-0-67373-6049f4a8ca0654540a73d4b35e78e945&logo=0&expire=0&did=C6B7293A7D2A1A6B20005333F3DBA6DF&ver=2017061511

就是这类地址 然后添加到pot上,直接能看的,

9号开始不行了,提示无法播放 服务器关闭之类! 所以我才开始找别的办法本地播放器看的方法!!!

Justsoos commented 7 years ago

那你把收藏的地址发出来看看吧。 @lki2019

sweat89 commented 7 years ago

File "./douyu_api.py", line 10, in import requests ModuleNotFoundError: No module named 'requests'

rosynirvana commented 7 years ago

依赖requests