正则表达式:如何获取流文件(m3u8)的wmsAuthSign?

时间:2017-12-19 07:44:56

标签: php regex

我目前正在使用PHP Regex代码,该代码为特定网站获取令牌wmsAuthSign = *,每个令牌有效30分钟。

<?php
$streamSite = "https://www.liveonlinetv247.info/embed/cartoonnetwork.php";
function writeFile($url, $channel) {
$File = $channel.".strm";
$Handle = fopen($File, 'w');
fwrite($Handle, $url);
fclose($Handle);
}
$input = @file_get_contents($streamSite) or die("Please try again later: $url");
preg_match("/(http.*?wmsAuthSign\=[^\&\">]+)/", $input, $matches);

echo $matches[1];

效果很好,但现在我想知道如何为直接URL创建Regex :(没有PHP网站)

https://freeeucache2.streamlive.to/live/2tag4dzgwof5ma2/chunks.m3u8?nimblesessionid=6976110&wmsAuthSign=c2VydmVyX3RpbWU9MTIvMTkvMjAxNyA3OjM1OjI5IEFNJmhhc2hfdmFsdWU9QlJDV1lCTzRKbnVaWEIvZDhmNURndz09JnZhbGlkbWludXRlcz0zMCZzdHJtX2xlbj0yMA==

我附上了最后一个令牌wmsAuthSign = *。

Base64解码:

server_time=12/19/2017 7:35:29 AM&hash_value=BRCWYBO4JnuZXB/d8f5Dgw==&validminutes=30&strm_len=20

我有哪些选项可以为此网址创建Regex?

1 个答案:

答案 0 :(得分:0)

这将获得第 1 组中的令牌:

wmsAuthSign=([^&?]+)$