如何使用php提取Json中的URL标记
我正在尝试从给定代码中提取url标记:如何使用php提取Json中的URL标记,php,html,json,regex,match,Php,Html,Json,Regex,Match,我正在尝试从给定代码中提取url标记: (function(e,a){ var t={ "cdn_url":"https://f.vimeocdn.com", "view":1, "request":{ "files":{ "h264":{ "hd":{ "profile":113,
(function(e,a){
var t={
"cdn_url":"https://f.vimeocdn.com",
"view":1,
"request":{
"files":{
"h264":{
"hd":{
"profile":113,
"origin":"level3",
"url":"https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722085083.mp4?expires=1446817250&token=0cc7a9f36655f3a0afff3",
"cdn":"level3",
"height":720,
"width":1280,
"id":722085083,
"bitrate":2583,
"availability":114
},
"sd":{
"profile":112,
"origin":"level3",
"url":"https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722083593.mp4?expires=1446817250&token=024b83dea6d2f4e4f57e1",
"cdn":"level3",
"height":360,
"width":640,
"id":722083593,
"bitrate":667,
"availability":114
}
},
"hls":{
"origin":"level3",
"all":"https://09-lvl3-hls.vimeocdn.com/1446820550-c34bde21acdff66dc5a0a7a4a701ba220774c80e/01/3164/4/115821665/master.m3u8",
"cdn":"level3"
},
"codecs":["h264"]
},
"ga_account":"UA-76641-35",
"expires":3600,
"timestamp":1446813350,
"signature":"6e5fbd174b7b4503945ffa8ae800f4b5",
"currency":"USD",
"session":"60ee52a4f9a681617d768b7bf329c10867b53cfe1446813350",
"cookie": {
"scaling":1,
"volume":1.0,
"quality":null,
"hd":null,
"captions":null},
我正在尝试从上述代码中提取SD视频URL:
https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722083593.mp4?expires=1446817250&token=024b83dea6d2f4e4f57e1
我正在使用PHP,因为它可以帮助任何人!
我正在尝试下载视频,但为此,我首先需要SD视频的url
提前感谢!:) 这是一个用来抓住它的正则表达式:
"sd":.*?"url":"([^"]*)"
URL最终位于第一个(也是唯一一个)捕获组中
但这是一种非常粗糙的方法。我建议您获取JSON对象并使用JSON\u decode
获取所需的值。(您的示例HTML不完整,因此我无法告诉您获取JSON对象的正则表达式是什么样子。)
关于这是一个可以抓住它的正则表达式:
"sd":.*?"url":"([^"]*)"
URL最终位于第一个(也是唯一一个)捕获组中
但这是一种非常粗糙的方法。我建议您获取JSON对象并使用JSON\u decode
获取所需的值。(您的示例HTML不完整,因此我无法告诉您获取JSON对象的正则表达式是什么样子。)
问候如果这是您所需要的一切,请尝试
"url":"([^"]*)"
代码中的用法示例:
$re = "/\"url\":\"([^\"]*)\"/";
$str = "(function(e,a){var t={\"cdn_url\":\"https://f.vimeocdn.com\",\"view\":1,\"request\":{\"files\":{\"h264\":{\"hd\":{\"profile\":113,\"origin\":\"level3\",\"url\":\"https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722085083.mp4?expires=1446817250&token=0cc7a9f36655f3a0afff3\",\"cdn\":\"level3\",\"height\":720,\"width\":1280,\"id\":722085083,\"bitrate\":2583,\"availability\":114},\"sd\":{\"profile\":112,\"origin\":\"level3\",\"url\":\"https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722083593.mp4?expires=1446817250&token=024b83dea6d2f4e4f57e1\",\"cdn\":\"level3\",\"height\":360,\"width\":640,\"id\":722083593,\"bitrate\":667,\"availability\":114}},\"hls\":{\"origin\":\"level3\",\"all\":\"https://09-lvl3-hls.vimeocdn.com/1446820550-c34bde21acdff66dc5a0a7a4a701ba220774c80e/01/3164/4/115821665/master.m3u8\",\"cdn\":\"level3\"},\"codecs\":[\"h264\"]},\"ga_account\":\"UA-76641-35\",\"expires\":3600,\"timestamp\":1446813350,\"signature\":\"6e5fbd174b7b4503945ffa8ae800f4b5\",\"currency\":\"USD\",\"session\":\"60ee52a4f9a681617d768b7bf329c10867b53cfe1446813350\",\"cookie\":{\"scaling\":1,\"volume\":1.0,\"quality\":null,\"hd\":null,\"captions\":null},";
preg_match($re, $str, $matches);
$matches[1]
包含您需要的值
如果这是您所需要的,请尝试
"url":"([^"]*)"
代码中的用法示例:
$re = "/\"url\":\"([^\"]*)\"/";
$str = "(function(e,a){var t={\"cdn_url\":\"https://f.vimeocdn.com\",\"view\":1,\"request\":{\"files\":{\"h264\":{\"hd\":{\"profile\":113,\"origin\":\"level3\",\"url\":\"https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722085083.mp4?expires=1446817250&token=0cc7a9f36655f3a0afff3\",\"cdn\":\"level3\",\"height\":720,\"width\":1280,\"id\":722085083,\"bitrate\":2583,\"availability\":114},\"sd\":{\"profile\":112,\"origin\":\"level3\",\"url\":\"https://09-lvl3-pdl.vimeocdn.com/01/3164/4/115821665/722083593.mp4?expires=1446817250&token=024b83dea6d2f4e4f57e1\",\"cdn\":\"level3\",\"height\":360,\"width\":640,\"id\":722083593,\"bitrate\":667,\"availability\":114}},\"hls\":{\"origin\":\"level3\",\"all\":\"https://09-lvl3-hls.vimeocdn.com/1446820550-c34bde21acdff66dc5a0a7a4a701ba220774c80e/01/3164/4/115821665/master.m3u8\",\"cdn\":\"level3\"},\"codecs\":[\"h264\"]},\"ga_account\":\"UA-76641-35\",\"expires\":3600,\"timestamp\":1446813350,\"signature\":\"6e5fbd174b7b4503945ffa8ae800f4b5\",\"currency\":\"USD\",\"session\":\"60ee52a4f9a681617d768b7bf329c10867b53cfe1446813350\",\"cookie\":{\"scaling\":1,\"volume\":1.0,\"quality\":null,\"hd\":null,\"captions\":null},";
preg_match($re, $str, $matches);
$matches[1]
包含您需要的值
我不知道你想要什么。你想从上面的json中提取url标记吗?我想从上面的文本中提取https://url来下载视频!我不知道你要什么。你想从上面的json中提取url标记吗?我想从上面的文本中提取https://url来下载视频!你能给我提供完整的preg_匹配代码在PHP中应用吗?它来自HD部分。我需要从SD partpick中选择
$matches[1][1]
然后确定使用的是$matches[1][1]
变量吗?你能给我提供完整的preg_匹配代码在PHP中应用吗?它来自HD部分。我需要从SD partpick中选择$matches[1][1]
然后确定使用的是$matches[1][1]
变量吗?