本文整理汇总了PHP中CargaWebCurl函数的典型用法代码示例。如果您正苦于以下问题:PHP CargaWebCurl函数的具体用法?PHP CargaWebCurl怎么用?PHP CargaWebCurl使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了CargaWebCurl函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: calcula
function calcula()
{
$obtenido = array('enlaces' => array());
if (strpos($this->web, 'http://player.vimeo.com/video/') === 0) {
$ret = desde1a2($this->web_descargada, '{"', ';');
$json_respuesta = json_decode($ret, true);
} else {
$ret = CargaWebCurl('http://player.vimeo.com/video/' . html_entity_decode(entre1y2($this->web_descargada, 'http://player.vimeo.com/video/', '"')));
$json_respuesta = json_decode($ret, true);
}
dbug_r($json_respuesta);
$opciones = $json_respuesta['request']['files']['h264'];
dbug_r($opciones);
if (count($opciones) == 3 && isset($opciones['mobile']) && isset($opciones['hd']) && isset($opciones['sd'])) {
$obtenido['enlaces'][] = array('url' => $opciones['hd']['url'], 'url_txt' => "Calidad: Alta", 'tipo' => 'http');
$obtenido['enlaces'][] = array('url' => $opciones['sd']['url'], 'url_txt' => "Calidad: Media", 'tipo' => 'http');
$obtenido['enlaces'][] = array('url' => $opciones['mobile']['url'], 'url_txt' => "Calidad: Baja", 'tipo' => 'http');
} else {
foreach ($opciones as $index => $elem) {
$obtenido['enlaces'][] = array('url' => $elem['url'], 'url_txt' => "Calidad: " . $index, 'tipo' => 'http');
}
}
$titulo = $json_respuesta['video']['title'];
$titulo = limpiaTitulo($titulo);
$obtenido['titulo'] = $titulo;
$obtenido['imagen'] = current($json_respuesta['video']['thumbs']);
finalCadena($obtenido);
return $obtenido;
}
示例2: calcula
function calcula()
{
//mirar si hay video
$obtenido = array('titulo' => 'Canal de Historia', 'enlaces' => array());
if (!enString($this->web_descargada, '<iframe')) {
return;
}
preg_match_all('@<iframe src="(.*?)"@', $this->web_descargada, $matches);
dbug_r($matches);
foreach ($matches[1] as $url) {
dbug($url);
if (strpos($url, '//player.vimeo') === 0) {
$url = 'http:' . $url;
$vimeo = new Vimeo();
$url_descargada = CargaWebCurl($url);
$vimeo->init($url, $url_descargada);
$ret = $vimeo->calcula();
dbug_r($ret);
} else {
$adnstream = new Adnstream();
$url_descargada = CargaWebCurl($url);
$adnstream->init($url, $url_descargada);
$ret = $adnstream->calcula();
dbug_r($ret);
}
$obtenido['enlaces'][] = array('titulo' => $ret['titulo']);
foreach ($ret['enlaces'] as $enlace) {
$obtenido['enlaces'][] = $enlace;
}
if (!isset($obtenido['imagen'])) {
$obtenido['imagen'] = $ret['imagen'];
}
}
finalCadena($obtenido);
}
示例3: forshared
function forshared()
{
global $web;
$res = CargaWebCurl('http://search.4shared.com/q/CCQD/1/music/' . urlencode($web));
//recortar a solo los enlaces
$p = strposF($res, '"listView res_table"');
$f = strpos($res, '"writeDragMain"', $p);
$res = substr($res, $p, $f - $p);
$resultados = array('buscador' => '4shared.com', 'enlaces' => array());
$p1 = 0;
for ($i = 0; $i < 10 && ($p1 = strpos($res, '<tr valign="top" >', $p1)); $i++) {
$p1++;
//tamaño
$p = strposF($res, '<div class="fsize">', $p1);
$f = strpos($res, '</div>', $p);
$tam = substr($res, $p, $f - $p);
$tam = trim(strtr($tam, array("\n" => "", " " => "", "," => "", "KB" => "")));
$tam = (double) $tam / 1024;
$tam = substr($tam, 0, strpos($tam, ".") + 2);
//título
$p = strpos($res, 'mp3.png', $p1);
$p = strposF($res, 'title="', $p);
$f = strpos($res, '"', $p);
$tit = substr($res, $p, $f - $p);
$tit = trim(strtr($tit, array("\n" => "")));
//url
$p = strposF($res, "showMediaPreview(event, '", $p1);
$f = strpos($res, "'", $p);
$url = substr($res, $p, $f - $p);
$r = array('url' => $url, 'titulo' => $tit, 'peso' => $tam);
$resultados['enlaces'][] = $r;
}
dbug_r($resultados);
return $resultados;
}
示例4: soso
function soso()
{
global $web;
$res = CargaWebCurl('http://cgi.music.soso.com/fcgi-bin/m.q?p=1&source=1&t=1&w=' . urlencode($web));
//recortar a solo los enlaces
$p = strposF($res, '<div id="results_box">');
$f = strpos($res, 'id="right_box"', $p);
$res = substr($res, $p, $f - $p);
$resultados = array('buscador' => 'soso.com', 'enlaces' => array());
$p1 = 0;
for ($i = 0; $i < 20 && ($p1 = strpos($res, 'onmouseover="soso.ie6hover(this,1)"', $p1)); $i++) {
$p1++;
//url
$p = strposF($res, '<td class="data">', $p1);
$p = strposF($res, 'FI', $p);
$f = strpos($res, ";", $p);
$url = substr($res, $p, $f - $p);
if (!enString($url, "qqmusic.qq.com")) {
//título
$p = strposF($res, 'class="s_name">', $p1);
$f = strpos($res, '</a>', $p);
$tit = strip_tags(substr($res, $p, $f - $p));
//peso
$p = strposF($res, '<td class="size">', $p1);
$f = strpos($res, "</", $p);
$peso = substr($res, $p, $f - $p);
$peso = trim(strtr($peso, array("M" => "")));
$r = array('url' => $url, 'titulo' => $tit, 'peso' => $peso, 'preview' => 1);
$resultados['enlaces'][] = $r;
}
}
dbug_r($resultados);
return $resultados;
}
示例5: calcula
function calcula()
{
if (!preg_match('#<form name="F1" method="POST" action=\'\'>#i', $this->web_descargada)) {
setErrorWebIntera('No se encuentra ningún vídeo');
return;
}
$id = substr($this->web, strposF($this->web, 'allmyvideos.net/'));
dbug('id = ' . $id);
$web_embedPlayedTo = 'http://allmyvideos.net/' . $id;
$retfull = CargaWebCurl($web_embedPlayedTo, '', array('referer' => 'http://web.com'));
if (enString($retfull, '"image" : "')) {
$mode = 'lanzaAllMyVideosNet2';
$imagen = entre1y2($retfull, '"image" : "', '"');
} else {
$imagen = '';
$web_embedPlayedTo = 'http://allmyvideos.net/' . $id;
$mode = 'lanzaAllMyVideosNet1';
}
if (enString($this->web_descargada, 'filename=')) {
$titulo = entre1y2($this->web_descargada, 'filename=', '"');
if (enString($titulo, '&')) {
$titulo = substr($titulo, 0, strpos($titulo, '&'));
}
$titulo = urldecode($titulo);
} else {
$titulo = 'AllMyVideos ID: ' . $id;
}
// FALLA EN EL CALLBACK DEL SWF. EDITAR EL SWF
$urlJS = 'function lanzaAllMyVideosNet(){' . 'if(typeof DESCARGADOR_ARCHIVOS_SWF === "undefined"){' . 'setTimeout(lanzaAllMyVideosNet, 200)' . '}' . 'else if(DESCARGADOR_ARCHIVOS_SWF === true){' . 'getFlashMovie("descargador_archivos").CargaWeb({' . '"url":"' . $web_embedPlayedTo . '",' . '"metodo":"GET"' . '}, "' . $mode . '");' . '}' . '}' . 'function lanzaAllMyVideosNet1(txt){' . 'var regex = /<input.*?name="(.*?)".*?value="(.*?)".*?>/ig;' . 'var post = "";' . 'var res = [];' . 'while((res = regex.exec(txt)) != null){' . 'if(res[1] === "referer")res[2] = "";' . 'post += res[1] + "=" + res[2] +"&";' . '}' . 'getFlashMovie("descargador_archivos").CargaWeb({' . '"url":"' . $web_embedPlayedTo . '",' . '"metodo":"POST",' . '"post":post' . '}, "lanzaAllMyVideosNet2");' . '}' . 'function lanzaAllMyVideosNet2(txt){' . 'if(txt.indexOf(".setup(") !== -1){' . 'txt = txt.substr(txt.indexOf(".setup("));' . '}' . 'var urls = txt.split("\\"sources\\" : ")[1].split("]")[0]+"]";' . 'var urls = JSON.parse(urls);' . 'urls.sort(function(a,b){return parseInt(a["label"])<parseInt(b["label"])});' . 'url = urls[0]["file"];' . 'mostrarResultado(url);' . '}' . 'function mostrarResultado(entrada){' . 'finalizar(entrada,"Descargar");' . '}' . 'function mostrarFallo(){' . 'finalizar("","Ha ocurrido un error");' . '}' . 'if(typeof descargador_archivos === "undefined"){' . 'D.g("enlaces").innerHTML += \'' . genera_swf_object('/util/fla/f/allmyvideos.net') . '\';' . 'var descargador_archivos = D.g("descargador_archivos");' . '}' . 'lanzaAllMyVideosNet();';
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array(array('url' => $urlJS, 'tipo' => 'jsFlash')));
finalCadena($obtenido);
}
示例6: calcula
function calcula()
{
//$url = "http://www.crunchyroll.com/xml/?req=RpcApiVideoPlayer_GetStandardConfig&media_id={$id}&video_format={$format}&video_quality={$quality}&auto_play=1&aff=crunchyroll-website&show_pop_out_controls=1&pop_out_disable_message=Only+All-Access+Members+and+Anime+Members+can+pop+out+this+video.+Get+your+membership+today%21";
if (POST_BM) {
$ret = $this->web_descargada;
} else {
if (!enString($this->web_descargada, '"config_url":"')) {
define('IGNORA_AVISO_RAPIDO', true);
setErrorWebIntera(USE_BOOKMARKLET_2);
return;
}
$url = entre1y2($this->web_descargada, '"config_url":"', '"');
$url = urldecode($url);
/*
$url = "http://www.crunchyroll.com/xml/?req=RpcApiVideoPlayer_GetStandardConfig&media_id=649575&video_format=106&video_quality=60&auto_play=1&aff=crunchyroll-website&show_pop_out_controls=1&pop_out_disable_message=Only+All-Access+Members+and+Anime+Members+can+pop+out+this+video.+Get+your+membership+today%21";
$post = "current%5Fpage=http%3A%2F%2Fwww%2Ecrunchyroll%2Ecom%2Fkill%2Dla%2Dkill%2Fepisode%2D24%2Dpast%2Dthe%2Dinfinite%2Ddarkness%2D649575%3Fp480%3D1";
$ret = CargaWebCurl($url, $post, 0, '', array('Content-type: application/x-www-form-urlencoded'));
dbug_($ret);
*/
$post = "current%5Fpage=" . urlencode($this->web);
$ret = CargaWebCurl($url, $post, 0, '', array('Content-type: application/x-www-form-urlencoded'));
}
dbug_($ret);
$titulo = entre1y2($ret, '<series_title>', '</') . ' - ' . entre1y2($ret, '<episode_title>', '</');
$obtenido = array('titulo' => $titulo, 'imagen' => entre1y2($ret, '<episode_image_url>', '</'), 'enlaces' => array(array('url' => '-', 'rtmpdump' => '-r "' . entre1y2($ret, '<host>', '</') . '" ' . '-y "' . entre1y2($ret, '<file>', '</') . '"', 'nombre_archivo' => generaNombreWindowsValido($titulo) . '.mp4', 'tipo' => 'rtmpConcreto', 'extension' => 'mp4')));
finalCadena($obtenido);
}
示例7: calcula
function calcula()
{
$titulo = entre1y2($this->web_descargada, '<title>', '<');
dbug('titulo = ' . $titulo);
if (preg_match('@http://media.*?\\.mp4@', $this->web_descargada, $matches)) {
$imagen = entre1y2_a($this->web_descargada, strposF($this->web_descargada, '"og:image"'), '"', '"');
dbug('imagen = ' . $imagen);
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array(array('url' => $matches[0], 'tipo' => 'http')));
} else {
preg_match('@#player-container \\.player-display.*?url.*?\'(.*?)\'@', $this->web_descargada, $matches);
dbug_r($matches);
$urlPreM3U8 = 'http://www.netd.com' . $matches[1];
$ret = CargaWebCurl($urlPreM3U8);
dbug_($ret);
preg_match('@defaultServiceUrl.*?\'(.*?)\'.*?path.*?\'(.*?)\'@', $ret, $matches);
dbug_r($matches);
$url = $matches[1] . '/' . $matches[2];
dbug('URL = ' . $url);
preg_match('@preview.*?\'(.*?)\'@', $ret, $matches);
$imagen = 'http:' . $matches[1];
dbug('imagen = ' . $imagen);
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array(array('url' => $url, 'tipo' => 'm3u8')));
}
finalCadena($obtenido);
}
示例8: emp3world
function emp3world()
{
global $web;
$res = CargaWebCurl('http://www.emp3world.com/r.php?submit=Search&phrase=' . urlencode($web));
//recortar a solo los enlaces
$p = strposF($res, '<div id="results_box">');
$f = strpos($res, 'id="right_box"', $p);
$res = substr($res, $p, $f - $p);
$resultados = array('buscador' => 'emp3world.com', 'enlaces' => array());
$p1 = 0;
for ($i = 0; $i < 10 && ($p1 = strpos($res, 'class="song_item"', $p1)); $i++) {
$p1++;
//título
$p = strposF($res, '<span id="song_title">', $p1);
$f = strpos($res, '</span', $p);
$tit = trim(strtr(substr($res, $p, $f - $p) . "@@", array("mp3@@" => "")));
//url
$p = strposF($res, 'class="play_link"', $p1);
$f = strpos($res, "</div", $p);
$url = substr($res, $p, $f - $p);
$p = strrposF($url, '<a href="');
$f = strpos($url, '"', $p);
$url = substr($url, $p, $f - $p);
//peso
$p = strposF($res, 'class="song_size">', $p1);
$f = strpos($res, "</div", $p);
$peso = substr($res, $p, $f - $p);
$peso = trim(strtr($peso, array("MB" => "")));
$r = array('url' => $url, 'titulo' => $tit, 'peso' => $peso, 'preview' => 1);
$resultados['enlaces'][] = $r;
}
dbug_r($resultados);
return $resultados;
}
示例9: calculacom
function calculacom()
{
//titulo
//<meta property="og:title" content="Alaska y Mario Episodio Extra - Pierrot"/>
$p = strpos($this->web_descargada, 'og:title');
$titulo = entre1y2_a($this->web_descargada, $p, 'content="', '"');
$titulo = limpiaTitulo($titulo);
dbug('titulo=' . $titulo);
//imagen
//<meta property="og:image" content="http://....jpg?height=106&quality=0.91"/>
$p = strpos($this->web_descargada, 'og:image');
$imagen = entre1y2_a($this->web_descargada, $p, 'content="', '?');
if (enString($imagen, 'mtvnimages.com')) {
$imagen = $imagen . '?height=180&quality=1';
} else {
$imagen = substr($imagen, 0, strpos($imagen, '"'));
}
dbug('imagen=' . $imagen);
//en la página
/*
http://www.eitb.com/es/videos/detalle/1258848/video-meteorito-rusia--mas-100-heridos-al-caer-meteorito/
detalle_video_1258848
http://www.eitb.com/es/get/multimedia/video/id/1258848/size/grande/
<media:content url="http://hdstreameitb-f.akamaihd.net/z/multimediahd/videos/2013/02/15/1045086/20130215_15532024_0005703037_001_001____T1_METEOR.mp4/manifest.f4m" type="video/x-flv"/>
http://www.eitb.com/multimediahd/videos/2013/02/15/1045086/20130215_15532024_0005703037_001_001____T1_METEOR.mp4
http://www.eitb.com/multimedia/videos/2011/10/24/558362/PIRINEOS_ES_20111024_101408.flv
*/
if (preg_match('/<div.+?class="player">/', $this->web_descargada)) {
if (!enString($this->web_descargada, 'detalle_video_')) {
setErrorWebIntera('No se puede encontrar ningún vídeo.');
return;
}
$p = strpos($this->web_descargada, '<div class="player">');
$id = entre1y2_a($this->web_descargada, $p, 'detalle_video_', '"');
dbug('id=' . $id);
} elseif (enString($this->web_descargada, 'insertar_player_video(')) {
$id = entre1y2($this->web_descargada, 'insertar_player_video(', ',');
dbug('id=' . $id);
}
$ret = CargaWebCurl('http://www.eitb.com/es/get/multimedia/video/id/' . $id . '/size/grande/');
$imagen = entre1y2($ret, 'thumbnail url="', '"');
if (enString($ret, 'manifest.f4m')) {
$p = strpos($ret, '<media:content url="');
//$p=strpos($ret,'url="',$p);
$url = 'http://www.eitb.com/' . entre1y2_a($ret, $p, 'z/', '/manifest.f4m');
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array(array('url' => $url, 'tipo' => 'http')));
} elseif (enString($ret, '.mp4') || enString($ret, '.flv')) {
$url = 'http://www.eitb.com/' . entre1y2($ret, '<media:content url="', '"');
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array(array('url' => $url, 'tipo' => 'http', 'extension' => substr($url, -3, 3))));
}
//a la carta: Ni idea
/*
http://www.eitb.tv/es/#/video/2142574288001
http://www.eitb.tv/es/get/videoplaylist/2142574288001/
*/
finalCadena($obtenido);
}
示例10: calcula
function calcula()
{
//http://www.cope.es/player/id=2013072310430001&activo=6
if (enString($this->web_descargada, "_url_xml_datos:")) {
dbug("audio o video por xml");
//_url_xml_datos:'/proyecto/fragmentosJSP/playerxml.jsp?id=2013072310430001,1,33,13,,1411',
//http://www.cope.es/proyecto/fragmentosJSP/playerxml.jsp?id=2013072310430001,1,33,13,,1411
$url = "http://www.cope.es" . entre1y2($this->web_descargada, "_url_xml_datos:'", "'");
//http://www.cope.es/proyecto/fragmentosJSP/playerxml.jsp?id=2013072310430001,1,33,13,,1411
$ret = CargaWebCurl($url);
//mp3 y mp4: mp4->id=2013051613420001,1,30,,,1411
$p = strposF($ret, 'type="content"');
//$f=strposF($this->web_descargada,"'",$p);
//http://www.cope.es/proyecto/fragmentosJSP/playerxml.jsp?id=2013072310430001,1,33,13,,1411
$url = entre1y2_a($ret, $p, "<url>", "</url>");
//http://vod.cope.es/audio/2013/07/23/audio_13745695177069462491.mp3
//imagen
$imagen = "http://www.cope.es/" . entre1y2($ret, "<img>", "</img>");
} elseif (enString($this->web_descargada, "addCustomPlayer(")) {
//addCustomPlayer('1iynycahpn4lw1ppzh0l6r5z1a', '15wugu5n3ruow1j9kwr3ma3tqz', '177dxsxbyqz8h18z4sldn5awz2', 686, 466, 'perf1iynycahpn4lw1ppzh0l6r5z1a-177dxsxbyqz8h18z4sldn5awz2', 'eplayer17', {age:1354724063000});
//xml.eplayer.performgroup.com/eplayer/mrss/1iynycahpn4lw1ppzh0l6r5z1a/15wugu5n3ruow1j9kwr3ma3tqz//7-12
//xml.eplayer.performgroup.com/eplayer/mrss/1iynycahpn4lw1ppzh0l6r5z1a/15wugu5n3ruow1j9kwr3ma3tqz
preg_match("@addCustomPlayer\\('(.*?)',.*?'(.*?)'@", $this->web_descargada, $matches);
$aCargar = 'http://xml.eplayer.performgroup.com/eplayer/mrss/' . $matches[1] . '/' . $matches[2];
$xml = CargaWebCurl($aCargar);
//dbug($xml);
preg_match_all("@<item>[\\s\\S]*?</item>@", $xml, $matches);
dbug_r($matches);
foreach ($matches[0] as $item) {
$urlTXT = entre1y2($item, '<title>', '</title>');
$p = strrpos($item, 'url=');
$url = entre1y2_a($item, $p, '"', '"');
$obtenido['enlaces'][] = array('titulo' => $urlTXT, 'url' => $url, 'tipo' => 'rtmp');
}
$obtenido['titulo'] = 'Vídeos';
$obtenido['imagen'] = 'http://www.' . DOMINIO . '/canales/cope.png';
finalCadena($obtenido);
return;
} elseif (enString($this->web_descargada, '/proyecto/fragmentosJSP/playerxml.jsp')) {
$ret = CargaWebCurl('http://www.cope.es' . desde1a2($this->web_descargada, '/proyecto/fragmentosJSP/playerxml.jsp', '"'));
dbug_($ret);
$url = entre1y2($ret, '<urlHtml>', '</');
$obtenido = array('titulo' => 'Cope', 'imagen' => 'http://www.' . DOMINIO . '/canales/cope.png', 'enlaces' => array(array('url' => $url, 'url_txt' => 'Descargar', 'tipo' => 'http')));
finalCadena($obtenido);
return;
} else {
setErrorWebIntera('No se ha encontrado nada.');
return;
}
//titulo
$titulo = entre1y2($this->web_descargada, "<title>", "|");
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array(array('url' => $url, 'tipo' => 'http')));
finalCadena($obtenido);
}
示例11: calcula_urlAcortada
function calcula_urlAcortada()
{
foreach ($this->web_descargada_headers as $header) {
if (strpos($header, 'Location: ') === 0) {
$this->web = substr($header, strposF($header, 'Location: '));
dbug('Location encontrado = ' . $this->web);
$this->web_descargada = CargaWebCurl($this->web);
$this->calcula();
continue;
}
}
}
示例12: calcula
function calcula()
{
/*
"clip":{"url":"mp4:/_archivos/videos/web/4334/4334.mp4"}
"netConnectionUrl":"rtmp://alacarta.aragontelevision.es/vod"
"playlist":[{"url":"mp4:/_archivos/videos/web/4334/4334.mp4"}]
http://alacarta.aragontelevision.es/_archivos/videos/web/4334/4334.mp4
*/
$imagen = 'http://www.' . DOMINIO . '/canales/aragontv.png';
$obtenido = array('enlaces' => array());
//un solo video
if (enString($this->web_descargada, 'flowplayer(')) {
dbug('simple');
$titulo = entre1y2($this->web_descargada, '<div class="apartado"><h2>', '</h2>');
$titulo = limpiaTitulo($titulo);
if (stringContains($titulo, array('</', 'Server:'))) {
dbug('titulo fallido, usando <title>');
$titulo = entre1y2($this->web_descargada, '<title>', '</');
$titulo = limpiaTitulo($titulo);
}
dbug('titulo=' . $titulo);
$obtenido['enlaces'][] = $this->SacarVideo($this->web_descargada, $titulo);
} elseif (enString($this->web_descargada, 'list-not-even')) {
dbug('multi');
$p = strpos($this->web_descargada, '<div class="apartado">');
$titulo = entre1y2_a($this->web_descargada, $p, '<h2>', '</h2>');
//en la pagina principal y otras el titulo estará mal, por lo que poner uno genérico
if (enString($titulo, '<')) {
$titulo = 'Aragon TV';
}
$titulo = limpiaTitulo($titulo);
dbug('titulo=' . $titulo);
$videos = substr_count($this->web_descargada, '<span>Ver video</span>');
dbug('total videos=' . $videos);
$last = 0;
for ($i = 0; $i < $videos; $i++) {
$last = strposF($this->web_descargada, '<div id="idv', $last);
$url = 'http://alacarta.aragontelevision.es/ajax/ajax.php?id=' . entre1y2_a($this->web_descargada, $last, '_', '"');
//encontrar ya el titulo del vídeo
$f = strpos($this->web_descargada, 'fecha', $last);
$parte = substr($this->web_descargada, $last, $f - $last);
$p = strrpos($parte, '<a');
$nombre = entre1y2_a($parte, $p, 'title="', '"');
$extracto = CargaWebCurl($url);
$obtenido['enlaces'][] = $this->SacarVideoPorId($extracto, $nombre);
}
}
$obtenido['titulo'] = $titulo;
$obtenido['imagen'] = $imagen;
finalCadena($obtenido, false);
}
示例13: calcula
function calcula()
{
$obtenido = array('enlaces' => array());
preg_match("@([0-9]+?)(?:\\.html|-)@", $this->web, $matches);
dbug_r($matches);
if (!isset($matches[1]) || !is_numeric($matches[1])) {
// http://granadacf.ideal.es/noticias/201410/20/entrenamiento-mucho-contenido-fisico-20141020130408.html
// http://granadacf.ideal.es/modgen/?idModulo=rediseno2014/PPLL_playerVideoShowVideo&modoExtendido=player&idDivVideo=video_3849210620001_3092136624146_1_1413829041980&classVideo=story&widthVideo=490&heightVideo=490&idVideo=3849210620001&linkURLVideo=http%3A//www.ideal.es/videos/granadacf/201410/20/entrenamiento-mucho-contenido-fisico-3849210620001-mm.html&stillURLVideo=http%3A//www.ideal.es/noticias/201410/20/media/cortadas/entreno--490x490.jpg&medio=ideal&dominio=http%3A//www.ideal.es&location=granadacf.ideal.es&nameVideo=Entrenamiento%20con%20mucho%20contenido%20f%26iacute%3Bsico%20para%20iniciar%20la%20semana&shortDescriptionVideo=Entrenamiento%20con%20mucho%20contenido%20f%26iacute%3Bsico%20para%20iniciar%20la%20semana&creationDateMilisecondsVideo=1413821723&origenVideo=bc&capaModal=true&usoResizer=false&autoStartVideo=true&charset=WINDOWS-1252&authorVideo=STUDIO%20SUR&smoothingVideo=false&loid=30.9.2136624146&dispositivo=pc
setErrorWebIntera("No se ha encontrado ningún vídeo.");
return;
}
// http://www.ideal.es/videos/granada/noticias/1342041315001-02184-serie-tercer-premio-acera-darro.html
$idVideo = $matches[1];
$datosBC = "http://modulos-mm.ideal.es/includes/manuales/videos/php/proxyModgen.php?idVideo=" . $idVideo . "&idModulo=VOC_playerVideoShowVideo&modoExtendido=player&idDivVideo=video&medio=ideal&origenVideo=bc";
$datosBC = CargaWebCurl($datosBC);
dbug($datosBC);
$publisherID = entre1y2($datosBC, '"publisherID" value="', '"');
$playerID = entre1y2($datosBC, '"playerID" value="', '"');
//$urlBC = 'http://c.brightcove.com/services/viewer/federated_f9?&flashID='.$matches[1].'-bcObject&playerID='.$playerID.'&publisherID='.$publisherID.'&%40videoPlayer='.$matches[2].'&isVid=true&isUI=true&linkBaseURL='.urlencode('http://www.hogarutil.com'.$matches[6]);
//http://c.brightcove.com/services/messagebroker/amf?playerKey=AQ~~,AAAAEUA28vk~,ZZqXLYtFw-ADB2SpeHfBR3cyrCkvIrAe
$messagebroker = "http://c.brightcove.com/services/messagebroker/amf?playerId=" . $playerID;
include 'brightcove-funciones.php';
$a_encodear = array("target" => "com.brightcove.experience.ExperienceRuntimeFacade.getDataForExperience", "response" => "/1", "data" => array("0" => "ebcf49ebfaf7ae1b09cf79a1ab47c1286b3a0605", "1" => new SabreAMF_AMF3_Wrapper(new SabreAMF_TypedObject("com.brightcove.experience.ViewerExperienceRequest", array("TTLToken" => null, "deliveryType" => NAN, "URL" => $this->web, "experienceId" => $playerID, "playerKey" => null, "contentOverrides" => array("0" => new SabreAMF_TypedObject("com.brightcove.experience.ContentOverride", array("contentIds" => null, "contentRefId" => null, "contentRefIds" => null, "featuredRefId" => null, "contentType" => 0, "target" => "videoPlayer", "featuredId" => NAN, "contentId" => $idVideo))))))));
$post = brightcove_encode($a_encodear);
//$test="AAMAAAABAEZjb20uYnJpZ2h0Y292ZS5leHBlcmllbmNlLkV4cGVyaWVuY2VSdW50aW1lRmFjYWRlLmdldERhdGFGb3JFeHBlcmllbmNlAAIvMQAAAdAKAAAAAgIAKGViY2Y0OWViZmFmN2FlMWIwOWNmNzlhMWFiNDdjMTI4NmIzYTA2MDURCmNjY29tLmJyaWdodGNvdmUuZXhwZXJpZW5jZS5WaWV3ZXJFeHBlcmllbmNlUmVxdWVzdCFjb250ZW50T3ZlcnJpZGVzEVRUTFRva2VuGWRlbGl2ZXJ5VHlwZQdVUkwZZXhwZXJpZW5jZUlkE3BsYXllcktleQkDAQqBA1Njb20uYnJpZ2h0Y292ZS5leHBlcmllbmNlLkNvbnRlbnRPdmVycmlkZRVjb250ZW50SWRzGWNvbnRlbnRSZWZJZBtjb250ZW50UmVmSWRzG2ZlYXR1cmVkUmVmSWQXY29udGVudFR5cGUNdGFyZ2V0FWZlYXR1cmVkSWQTY29udGVudElkAQEBAQQABhd2aWRlb1BsYXllcgV/////4AAAAAVCgOqrnL6IAAYBBX/////gAAAABoE/aHR0cDovL3d3dy5pZGVhbC5lcy92aWRlb3MvZ3JhbmFkYS9ub3RpY2lhcy8yMzI1MDEwOTQ2MDAxLWRpbGlnZW5jaWFzLXZ1ZWx2ZW4tdmFsbGUtbGVjcmluLmh0bWwFQlH8m6HwQAAGAQ==";
//dbug_r(brightcove_decode(base64_decode($test)));
dbug('a descargar: ' . $messagebroker);
/*$t=brightcove_curl_web("http://forestrf.no-ip.org/",$post); //borrar, es una prueba
dbug_($t);
exit;*/
$t = brightcove_curl_web($messagebroker, $post);
dbug_($t);
$res_decoded = brightcove_decode($t);
dbug("PRIMERA RESPUESTA BRIGHTCOVE:");
dbug_r($res_decoded);
$base = $res_decoded["data"]->getAMFData();
$base = $base['programmedContent']['videoPlayer']->getAMFData();
$base = $base['mediaDTO']->getAMFData();
dbug_r($base);
$titulo = $base["linkText"];
$imagen = $base["videoStillURL"];
dbug('titulo = ' . $titulo);
dbug('imagen = ' . $imagen);
$obtenido['enlaces'] = brightcove_genera_obtenido($this, $base, array('IOSRenditions' => 'm3u8', 'renditions' => 'rtmp'));
$obtenido['titulo'] = $titulo;
$obtenido['imagen'] = $imagen;
finalCadena($obtenido, false);
}
示例14: calcula
function calcula()
{
//title: "Matalobos quotAno 1 A familiaquot",
$titulo = entre1y2($this->web_descargada, '<title>', '<');
if (enString($titulo, ' |')) {
$titulo = entre1y2($titulo, 0, ' |');
}
$titulo = limpiaTitulo($titulo);
dbug('titulo=' . $titulo);
if (enString($this->web_descargada, "id=\$(this).attr('id').split('|');")) {
dbug('modo 1');
preg_match("#url:.*?'(.*?)',#i", $this->web_descargada, $matches);
dbug_r($matches);
$url = $matches[1];
if ($url[0] === '/') {
$url = 'http://www.crtvg.es' . $url;
} else {
if ($url[0] !== 'h') {
$url = substr($this->web, 0, strrposF($this->web, '/')) . $url;
}
}
dbug_r($url);
preg_match_all("#<div class='cap' id='([0-9]+?)\\|([0-9]+?)'>#", $this->web_descargada, $matches);
dbug_r($matches);
$obtenido = array('titulo' => $titulo, 'imagen' => '/canales/tvg.jpg', 'enlaces' => array());
for ($i = 0, $i_t = count($matches[0]); $i < $i_t; $i++) {
$ret = CargaWebCurl($url, 'idSerie=' . $matches[1][$i] . '&idCapitulo=' . $matches[2][$i]);
//dbug_($ret);
$tit = entre1y2($ret, '<div id="titulo">', '</div');
$tit = strip_tags($tit);
$this->parsefragment($obtenido['enlaces'], $ret, $tit, true);
}
} else {
dbug('modo 2');
//backgroundImage: "url(http://www.crtvg.es/files/web/000020120911000003.jpg)"
if (enString($this->web_descargada, 'backgroundImage:')) {
$p = strpos($this->web_descargada, 'backgroundImage:');
$imagen = entre1y2_a($this->web_descargada, $p, 'url(', ')');
} else {
$imagen = entre1y2($this->web_descargada, '"playlist":[{"url":"', '"');
$imagen = str_replace('\\', '', $imagen);
}
dbug('imagen=' . $imagen);
$obtenido = array('titulo' => $titulo, 'imagen' => $imagen, 'enlaces' => array());
$this->parsefragment($obtenido['enlaces'], $this->web_descargada, $titulo);
}
finalCadena($obtenido);
}
示例15: soundcloud
function soundcloud()
{
global $web;
$client_id = "b45b1aa10f1ac2941910a7f0d10f8e28";
$res = CargaWebCurl('https://api.sndcdn.com/search/sounds?facet=genre&limit=10&offset=0&linked_partitioning=1&client_id=' . $client_id . '&q=' . urlencode($web));
$resultados = array('buscador' => 'soundcloud.com', 'enlaces' => array());
$p1 = 0;
for ($i = 0; $i < 10 && ($p1 = strpos($res, '"kind":"track"', $p1)); $i++) {
//streamable?
$p = strposF($res, '"streamable":', $p1);
$f = strpos($res, ',', $p);
$streamable = substr($res, $p, $f - $p);
if ($streamable == "true") {
//url
$p = strposF($res, '"id":', $p1);
$f = strpos($res, ",", $p);
$modoUrl = "stream";
$url = 'http://api.soundcloud.com/tracks/' . substr($res, $p, $f - $p) . '/' . $modoUrl . '?client_id=' . $client_id;
//título
$p = strposF($res, '"title":"', $p1);
$f = strpos($res, '"', $p);
$tit = utf8_encode(jsonRemoveUnicodeSequences(substr($res, $p, $f - $p)));
//duración
$p = strposF($res, '"duration":', $p1);
$f = strpos($res, ',', $p);
$duracion = (double) substr($res, $p, $f - $p) / 1000;
$min = (int) ($duracion / 60);
$seg = $duracion - $min * 60;
$seg = substr($seg, 0, 2);
while (enString($seg, ".")) {
$seg = "0" . substr($seg, 0, 1);
}
$duracion = $min . ":" . $seg;
//peso
/*$p=strposF($res,'"original_content_size":',$p1);
$f=strpos($res,",",$p);
$tam=substr($res,$p,$f-$p);
$tam=((float)$tam)/1048576;
$tam=substr($tam,0,strpos($tam,".")+2);*/
$r = array('url' => $url, 'titulo' => $tit, 'duracion' => $duracion, 'preview' => 1);
$resultados['enlaces'][] = $r;
}
$p1++;
}
dbug_r($resultados);
return $resultados;
}