获取视频相关信息
GET https://api2.4gtv.tv/Channel/GetChannel/1 HTTP/1.1
{“Success”:true,”ErrMessage”:null,”Data”:{“fnID”:1,”fsTYPE”:”01″,”fsCDN_ROUTE”:null,”fsTYPE_NAME”:null,”fsNAME”:”民視第一台”,”fs4GTV_ID”:”4gtv-4gtv003″,”fnCHANNEL_NO”:4,”fsHEAD_FRAME”:”https://4gtvimg.4gtv.tv/4gtv-Image/Production/Channel/Live/4gtv-4gtv003.jpg”,”fsLOGO_PC”:”https://pic.4gtv.tv/ChannelLogo/pc/logo_4gtv_4gtv-4gtv003_pc.png”,”fsLOGO_MOBILE”:”https://pic.4gtv.tv/ChannelLogo/mobile/logo_4gtv_4gtv-4gtv003_mobile.png”,”fcOVERSEAS”:true,”lstEXCEPT_COUNTRY”:[“”],”lstALL_BITRATE”:[“360″,”480″,”720″,”1080″],”fsFREE_PROFILE”:”mid”,”lstSETs”:null,”fcFREE”:true,”fsQUALITY”:”HD”,”fnCHAT_ID”:1,”fcHAS_PROGLIST”:true,”fcLIKE”:false,”fcRISTRICT”:false,”fsEXPIRE_DATE”:null,”fnGRADED”:1}}
根据获取的信息,使用AES加密提交获取并且AES解密得到播放M3U8
POST https://api2.4gtv.tv/Channel/GetChannelUrl3 HTTP/1.1
value=AWjB%2BiPGYznmXp6O%2B9Bl31oMCwWmTLRKNUmM9uhVZN5RCu8U2UDok0u63Z%2BxW5yUKb5p7%2BZ%2BglZ8Pce2azud5bCqf5LIAy%2BzgYm108RvFxP0OqHUsUL3ZtssFy2xJd%2F41pAupbN14jHqWzEofSIhPw%3D%3D
value={“fnCHANNEL_ID”:1,”fsASSET_ID”:”4gtv-4gtv003″,”fsDEVICE_TYPE”:”pc”,”clsIDENTITY_VALIDATE_ARUS”:{“fsVALUE”:””}}
{“Success”:true,”ErrMessage”:null,”Data”:”61BzIrtQETynvjX3OTfc5tXp5J1HTKaCMybGzdDEtsgSKbpj2Pe4zketINKFY/tYDn9GqB+cmvkuL6U3O9WdzDdUPZ9f2sqxNqznitHO3EtZFWs4EKmgnhvIoEr4WK1neyBGJw4r+j7k1KQJiIhbg3oe71l46pXwN3MQgTTp4nP5b3waLXDXgI2HF9aZuDRYilHRrB/E5T1uFzM8b8e60HcAsur+gb881JJyGFxE02rh0K6LbnI1UtHryEnqrPiHdiTmYRnZQDfI96WOJ+VacF2EXiMyO+Hh19S6BpUv4KeThqF6fNc9wqqg0s8Yv3wqI6b7qEx3gccL3NAm+Z2WOlvX0kvBfN5gW6XT4tjPZv4UMEp4ywZDNDy4neaFIsPbcoFwilEfbG8d/SClzLxTf4tknD9w+5PxVRgyCf/lRu/zgEJNgSVXX2HqgpR8TQKiZD5P/FAFmiOQkkNo//kaBWlsFTFQYHgPwS3u/zfoFwiKfleA0y49cJUuoXLWq3sQwq3U8dzuUKXKLIB/hTPWyJjnr1h+OI7+OoqYtwCFRo/BBOKzCzcZFFi+34kr1x7ykp6DuM9jJsmu5kg7N8wheFSH0k8c2MppKzsqAXO/ZS5Qjh+b0NH83hZ6zQ1tkVr6coa+W0WdQnUkwIhjatP2ONfNx2EIzjQBBlI03k/jiMQYKwfadaWfP5MQT1iY/g2TOT1mXDPUlarugFjEZGNwjJ/JvHpeB2O4av+Auai1DKxx3sGWJ7AfOad/3oBXPsA0jkD4SK8F0+Qe7M3lPV9wfZh/ou05+wvJt2E8ZuvvZzU=”}
{“fsCHANNEL_NAME”:”民視第一台”,”flstURLs”:[“https://4gtvfreepc-cds.cdn.hinet.net/live/pool/4gtv-4gtv003/4gtv-live-mid/index.m3u8?token=YFxFWcMg1QfXeq_fpu14_A&expires=1572063873&token1=sejrHvitoJpg1aA-HSLRoA&expires1=1572063873″,”https://4gtvfreepc-mozai.4gtv.tv/KKF9akuj_6onAiC36atb7E8TVz_cEMzL3Hd_15oh23Y%3d/index.m3u8?token=t5h1FmMMJdfqO-dNuT2Hqw&expires=1572035073&refer=NzFlYmEwODctMDIxYy00N2QyLTgwODUtYzg1MWE1YzcwOWY4&y=0″],”fsHEAD_FRAME”:”https://4gtvimg.4gtv.tv/4gtv-Image/Production/Channel/Live/4gtv-4gtv003.jpg”,”fbPLAY_AD”:true,”flstBITRATE”:[360,480,720,1080],”fnALLOWTIME”:-1}
视频地址—-每次获取得4小时内可用
https://4gtvfreepc-cds.cdn.hinet.net/live/pool/4gtv-4gtv003/4gtv-live-mid/index.m3u8?token=YFxFWcMg1QfXeq_fpu14_A&expires=1572063873&token1=sejrHvitoJpg1aA-HSLRoA&expires1=1572063873
AES算法
AES加密 CBC模式 PKCS7填补
key=ilyB29ZdruuQjC45JhBBR7o2Z8WJ26Vg
iv=JUMxvVMmszqUTeKn
ssl双向认证了
我去,现在这个URL: https://api2.4gtv.tv/Channel/GetChannelUrl3开始证书认证了,fiddle没办法抓包了,显示一把钥匙,
好像已经不行了,求证...
好几年前的算法了。行不行我也不知道了
算法没有改变,好像ssl证书验证,用curl不行了,抓不到数据,感觉是cloudflare防火墙阻隔了。不过每天晚上8点半可以用curl到凌晨。第二天又不行
真的不行了吗?
求教,怎么控制分辨率,怎么选择720或者1080
请问php 7.4有现成的代码PKCS7填补,谢谢
{"Success":false,"Status":500,"ErrMessage":"失敗"} 请教下PHP的POST模式 返回这个,来来回回试几种都是这样?请问是什么问题呢?用Chrome获取的数据直接用上也是这样,能回一下邮件帮助下吗?
请说具体原因,这个是返回错误了。
URL: https://api2.4gtv.tv/Channel/GetChannelUrl3
POST
value=AWjB%2BiPGYznmXp6O%2B9Bl34Xj9JIXFIRWupGT5gJiKezLgLAJ%2FzMiKwRaYsz8bBOlSOwRHYB%2B4QGj4v0dUgu1XdXqi%2Bpj7EBsiYrehr8ftubASMpwCnbY6%2FvVT7iTBFU1yhDbexLJOmjnSjPfFIobYcRA%2FeLTvN8B%2FH40GmUlmoY%3D
或者
value=AWjB+iPGYznmXp6O+9Bl34Xj9JIXFIRWupGT5gJiKezLgLAJ/zMiKwRaYsz8bBOlSOwRHYB+4QGj4v0dUgu1XdXqi+pj7EBsiYrehr8ftubASMpwCnbY6/vVT7iTBFU1yhDbexLJOmjnSjPfFIobYcRA/eLTvN8B/H40GmUlmoY=
能照这样的数据POST上去,就提示那个错误,但是PHP的函数没有错,POST其它网址是可以用的?难道还要其它方法吗?我从Google Chrome截到的数据都是固定的,请指教到底那里有问题。
我现在这里访问不了这网站。
这个value是要经过URL编码提交得。
你这个提交方式是正确得
value=AWjB%2BiPGYznmXp6O%2B9Bl34Xj9JIXFIRWupGT5gJiKezLgLAJ%2FzMiKwRaYsz8bBOlSOwRHYB%2B4QGj4v0dUgu1XdXqi%2Bpj7EBsiYrehr8ftubASMpwCnbY6%2FvVT7iTBFU1yhDbexLJOmjnSjPfFIobYcRA%2FeLTvN8B%2FH40GmUlmoY%3D
已经解决问题了·谢谢
这个4g我还是看不懂下面
老大,如何用openssl代替merypt呢?同样加密方式,结果不一样啊。这几天看看hamitv,它使用了okhttp3.1.2,.2,我用免费节目源,,如果print $url,能够得到地址,复制到播放器可以播放,但是header(location,$url),不能播放。在网页地址输入代理地址,提示m3u8下载,无法播放,可能锁定了。这个怎么解决
楼主,如果post后返回{"Success":false,"Status":500,"ErrMessage":"失敗"}是啥意思呀
value={“fnCHANNEL_ID”:1,”fsASSET_ID”:”4gtv-4gtv003″,”fsDEVICE_TYPE”:”pc”,”clsIDENTITY_VALIDATE_ARUS”:{“fsVALUE”:””}}怎么加密成这个的你value=AWjB%2BiPGYznmXp6O%2B9Bl31oMCwWmTLRKNUmM9uhVZN5RCu8U2UDok0u63Z%2BxW5yUKb5p7%2BZ%2BglZ8Pce2azud5bCqf5LIAy%2BzgYm108RvFxP0OqHUsUL3ZtssFy2xJd%2F41pAupbN14jHqWzEofSIhPw%3D%3D
博主你好!关于PHP代理直播能不能教教最基础的小白啊?或者说加下我QQ,有偿请教。
QQ邮箱就是我的QQ号码,谢谢!
4G内地可以直接观看吗? 还是被屏蔽了啊
good
版主,您的这个方法是不是只对民视的几个台可以获取地址,对其他台都没用?还是我那里没有弄对?请问版主对除了几个民视台以外的台是否能获取到地址?
https://api2.4gtv.tv/Channel/GetChannel/1
这个后面跟着得1就是节目台。
我没有具体测试其他得台。但是按道理来说其他台也是可以得
例如9是好消息
6是華視
11是達文西頻道
17東森亞洲衛視
类推...具体得到节目需要你自己到首页去提取。我只是用民视举个例子
如果某些台需要收费,验证用户。就需要带用户cookie去获取。
我只是分析了单纯得怎么获取。和获取过程中需要用到得算法
感谢回复!后面数字我改过,只有1 2 3和16这几个民视的台可以获取到地址,其他比如您举例的几个台依然获取不到。value最后一个参数不知该填那个?我是参照您的列子填空,其实value值变化的只有第二个参数,其他参数都不知道怎么选?
提交获取得视频得前2个参数都是根据前一个获取到相关信息。后2个固定就行。
还有就是我刚试了。如果返回:{"Success":false,"ErrMessage":"02","Data":null}
就是视频只提供给台湾地区播放。所以我们内地是获取不到得。要台湾得IP
谢谢回复,现在终于明白了。
已经搞定了,经过了url编码
版主,post提交的value不是aes加密的吧?我弄得加密解密函数应该没错,下面的加密data解密是正确的,但这个value不知是什么加密方式?
感谢版主的辛勤付出,谢谢
向版主学习学习
不能看到aes内容
要登录才能查看,不知道在那里登录?
是台湾的源,可能需要梯子
aes算法看不到,需要登录和评论后才能看,我倒是评论了,登录需要用户名和密码,这个不知道去那里注册
好了得,之前是用了自带得隐藏。
谢谢,还要回复评论一次才能看到
还是不对,评论了也看不到隐藏
博主的博客怎么有段时间都登录不上啊?
VPS提供商要求换机器,然后当时又忙。所以前几天抽空才搬过新服务器架起来。
不是计算机中文的人看了老大文章明白了,aes cbc packpadding7 base64加密后进行url编码提交,然后再用上述方式解密。
感谢你的分析,学习学习