
kanikase
Préstamo
Ómicron
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Hola betas, aquí un nuevo tutorial 🙂
En este les enseñaré a que hagan otro descargador pero este de .mp3 de soundcloud, ya que la web no tiene esa opción. lo haremos usando la API que es para Twitter, un poco de php y HTML.
Primero van a como siempre crear dos archivos, con los siguientes nombres:
abren el index.php y en él pegan el siguiente código:
Y así lo guardan 😀
Y ahora abren descargar.php y en él pegan este código:
Y también así lo guardan :welcoming:
Y los suben los dos en un mismo directorio, y ya lo tendrían funcionando, solo tienen que pegar la url de la canción de soundcloud en el campo de texto, darle click a "Obtener" y listo, les saldrá el enlace de descarga y la canción:

Aclaraciones, no se puede descarga múltiple, porque cuando pones a descargar una canción se guarda primero en su host, con el nombre de Audio.mp3 y si pusieran a descargar otra al mismo tiempo se reemplazaría, por lo que la primera canción no quedaría completa, se puede arreglar, pero lo hago así para que no se les llene de archivos el host.
Otra es que a veces falla, no aparece la canción ni se puede descargar, pero es porque el enlace expira (o algo así) solo recarguen hasta que les funcione 🙂
:encouragement:
DEMO
Otros tutoriales:
En este les enseñaré a que hagan otro descargador pero este de .mp3 de soundcloud, ya que la web no tiene esa opción. lo haremos usando la API que es para Twitter, un poco de php y HTML.
Primero van a como siempre crear dos archivos, con los siguientes nombres:
- index.php
- descargar.php
abren el index.php y en él pegan el siguiente código:
PHP:
<?php
function soundcloud($url) {
$url = urldecode($url);
$source = @file_get_contents($url);
preg_match('/<meta name="twitter:audio:source" content="(.*)">/', $source, $match);
$json = file_get_contents($match[1]);
$json = json_decode($json, true);
$titulo = $json['tracks'][0]['title'];
$imagen = $json['tracks'][0]['artwork'];
$musica = $json['tracks'][0]['sources'][1]['url'];
$artist = $json['tracks'][0]['artist']['name'];
$datos = array('titulo' => $titulo, 'imagen' => $imagen, 'url' => $musica, 'autor' => $artist);
return json_encode($datos);
}
if (isset($_GET['url'])) {
$datos = json_decode(soundcloud($_GET['url']), true);
$titulo = $datos['titulo']." | Soundcloud to MP3";
$url = $datos['url'];
$autor = $datos['autor'];
$dl = "descargar.php?url=".urlencode($url);
} else {
$titulo = "Soundcloud to MP3";
}
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title><?php echo $titulo; ?></title>
</head>
<body>
<form action="https://soundcloud.com/search/sounds" method="get" target="_blank" autocomplete="off">
<input type="text" name="q" placeholder="Buscar..." style="width:300px;">
<input type="submit" value="Buscar">
</form>
<br>
<form method="get" autocomplete="off">
<input type="text" name="url" placeholder="URL soundcloud" style="width:300px;">
<input type="submit" value="Obtener">
</form>
<br>
<div id="respuesta"><?php if (isset($_GET['url'])) { ?>
<p><?php echo "<a href=\"$dl\" title=\"Click para descargar\">Descargar \"".str_replace(' - Soundcloud to MP3', '', $titulo)."\"</a>"; ?></p>
<audio controls preload>
<source src="<?php echo $url; ?>">
</audio>
<?php } ?></div>
</body>
</html>
Y así lo guardan 😀
Y ahora abren descargar.php y en él pegan este código:
PHP:
<?php
function descarga($nombre, $url) {
$video = file_get_contents($url);
file_put_contents($nombre, $video);
if(isset($nombre) && file_exists($nombre)) {
$tamano = filesize($nombre);
header("Content-length: $tamano");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename='$nombre'");
readfile($nombre);
}
}
if (isset($_GET['url'])) {
$url = urldecode($_GET['url']);
$ext = pathinfo($url)['extension'];
$ext = substr($ext, 0, 3);
if ($ext != 'mp3') {
die('Error, no es una cancion '.$ext);
}
if (!descarga('Audio.mp3', $url)) {
echo "Error, no se ha podido descargar";
}
}
?>
Y también así lo guardan :welcoming:
Y los suben los dos en un mismo directorio, y ya lo tendrían funcionando, solo tienen que pegar la url de la canción de soundcloud en el campo de texto, darle click a "Obtener" y listo, les saldrá el enlace de descarga y la canción:

Aclaraciones, no se puede descarga múltiple, porque cuando pones a descargar una canción se guarda primero en su host, con el nombre de Audio.mp3 y si pusieran a descargar otra al mismo tiempo se reemplazaría, por lo que la primera canción no quedaría completa, se puede arreglar, pero lo hago así para que no se les llene de archivos el host.
Otra es que a veces falla, no aparece la canción ni se puede descargar, pero es porque el enlace expira (o algo así) solo recarguen hasta que les funcione 🙂
:encouragement:
DEMO
Otros tutoriales:
Última edición: