Accueil > > > TÉLÉCHARGER LES VIDEOS DE YOUTUBE AVEC PERMALIEN DEPUIS YOUTUBE
TÉLÉCHARGER LES VIDEOS DE YOUTUBE AVEC PERMALIEN DEPUIS YOUTUBE
Information sur la source
Description
Salut, Suite à la version précèdente, voilà la nouvelle mise à jour importante. Voilà ce que peut faire le script : - Télécharger une vidéo depuis Youtube sur votre serveur en flv ou en mp4. Attention, ça prends du temps. Si vous tester en locale, évitez de télécharger les vidéos, parce que ça va buger à cause de votre connexion qui n'est pas capable de télécharger une telle vidéo. - Donner le lien direct de téléchargement temporaire de la vidéo en flv et mp4. Quand je dit temporaire, ça veut dire qu'il marche que pour une session donc inutile de l'envoyer ou de le poster sur les forums. - Donner un lien permanent (je suis fière de cette exploit) de la vidéo depuis youtube en flv et en mp4 en passant par votre page. Aucun fichier n'est hébergé sur votre site, seulement cette page qui génère le lien chaque fois qu'on clique dessus et redirige vers le téléchargement sans que l'utilisateur ne verra que du feu ;) Conclusion, c'est celui là que vous pouvez postez sur les forums. - Afficher la minature de la vidéo. (Celle affiché sur Youtube). /!\ Attention, si vous utilisez de copier la vidéo sur votre serveur, ça va vous bouffer tant de bande passante !! N'optez pour cette solution que si vous avez une bande passante illimité ;) - Pour utilisez le script, télécharger le ZIP, et uploadez le tous, et donner un CHMOD 777 sur le dossiers vidéo, si vous voulez copier les vidéos sur votre serveur. - Ou bien créer 2 page, index.php et lien.php et un dossier videos, que vous donnez le CHMOD (permissions) 777. Voici la source :
Source
- la page : index.php
- ======================================
-
- <?php
- // On déclare la fonction du téléchargement avant.
- function get_video_url_youtube($page)
- {
- $url = $page.'&';
- $regex = '/v=(.+?)&+/';
- preg_match($regex, $url, $vid_code);
- $input = file_get_contents($page);
- $regex = '/&t=(.+?)&+/';
- preg_match($regex, $input, $vid_t);
- return 'http://www.youtube.com/get_video?video_id='.$vid_code[1].'&t='.$vid_t[1].'=';
- }
- ?>
-
- <html>
- <head>
- <title>Youtube Téléchargeur</title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- </head>
- <body>
- <center>
- <h1>Télécharger les vidéos de Youtube</h1>
- <?php
- if (!isset($_POST['lien'])) // On vérifie si le formulaire est déjà rempli, sinon on l'affiche
- {
- echo '
- <form method="post">
- Lien de la vidéo : <input type="text" name="lien" /><br />
- Format de sortit : <input type="radio" name="format" value="flv" checked="checked" /> FLV <input type="radio" name="format" value="mp4" /> MP4<br />
- Télécharger sur votre serveur : <input type="radio" name="down" value="oui" checked="checked" /> Oui <input type="radio" name="down" value="non" /> Non<br /><br />
- <input type="submit" value="Télécharger" />
- </form> ';
- }
- else // Le formulaire est rempli
- {
- // On récupère les variables
- $lien = $_POST['lien']; // Le lien de la vidéo
- $down = $_POST['down']; // Si la vidéo est télécharger sur le serveur
- $format = $_POST['format']; // Format désiré
-
- // On récupère les lien de la vidéo
- $lien_yt_flv = get_video_url_youtube($lien); // La vidéo en flv
- $lien_yt_mp4 = $lien_yt_flv.'&fmt=18'; // La vidéo en mp4
-
- // Si on demande le téléchargement de la video, On la copie sur le serveur
- if ($down == "oui")
- {
- if ($format == "flv") // Le format est en FLV
- {
- $newname = 'videos/'.time().'.flv'; // On donne un nouveau nom et on ajoute l'extention
- copy($lien_yt_flv, $newname);
- }
- else // Le format est en MP4
- {
- $newname = 'videos/'.time().'.mp4'; // On donne un nouveau nom et on ajoute l'extention
- copy($lien_yt_mp4, $newname);
- }
- }
-
- // Pour obtenir l'id de la vidéo
- $url = $lien.'&';
- $regex = '/v=(.+?)&+/';
- preg_match($regex, $url, $vid_code);
- //On affiche l'image
- echo '<img src="http://i1.ytimg.com/vi/'.$vid_code[1].'/default.jpg"><br /><br />';
- // On affiche les résultat
- echo '<a href="'.$lien_yt_flv.'">Lien depuis Youtube en FLV<br /></a>';
- echo '<a href="'.$lien_yt_mp4.'">Lien depuis Youtube en MP4<br /></a>';
- // On teste d'abord si on a demandé de copier la vidéo sur notre sevreur
- if ($down == "oui")
- {
- if ($format == "flv") // Le format est en FLV
- {
- echo '<a href ="'.$newname.'">Lien depuis votre serveur en FLV</a><br />';
- }
- else // Le format est en MP4
- {
- echo '<a href ="'.$newname.'">Lien depuis votre serveur en MP4</a><br />';
- }
- }
- // On affiche les permaliens.
- echo '<a href ="lien.php?id='.$vid_code[1].'&type=flv">Lien permanant depuis Youtube en FLV</a><br />';
- echo '<a href ="lien.php?id='.$vid_code[1].'&type=mp4">Lien permanant depuis Youtube en MP4</a><br /><br />';
-
- }
- ?>
- Attention : Si vous télécharger la vidéo depuis Youtube et non depuis votre serveur, vous devez la renommer en ajoutant .flv ou .mp4 à la fin du fichier téléchagré.
- </center>
- </body>
- </html>
-
-
- la page : lien.php
- ======================================
-
- <?php
-
- function get_video_url_youtube($page) // Encore la fonction super sympa :p
- {
- $url = $page.'&';
- $regex = '/v=(.+?)&+/';
- preg_match($regex, $url, $vid_code);
- $input = file_get_contents($page);
- $regex = '/&t=(.+?)&+/';
- preg_match($regex, $input, $vid_t);
- return 'http://www.youtube.com/get_video?video_id='.$vid_code[1].'&t='.$vid_t[1].'=';
- }
-
- // récupère les variables
- $id = $_GET['id'];
- $type = $_GET['type'];
-
- $lien = 'http://www.youtube.com/watch?v='.$id;
-
- $lien_yt_flv = get_video_url_youtube($lien); // La vidéo en flv
- $lien_yt_mp4 = $lien_yt_flv.'&fmt=18'; // La vidéo en mp4
-
-
- if ($type == "flv") // On vérifie le type
- {
- header("Location: $lien_yt_flv"); // Puis on redirege vers le lien de téléchargement
- }
- else
- {
- header("Location: $lien_yt_mp4"); // idem en cas de mp4
- }
- ?>
la page : index.php
======================================
<?php
// On déclare la fonction du téléchargement avant.
function get_video_url_youtube($page)
{
$url = $page.'&';
$regex = '/v=(.+?)&+/';
preg_match($regex, $url, $vid_code);
$input = file_get_contents($page);
$regex = '/&t=(.+?)&+/';
preg_match($regex, $input, $vid_t);
return 'http://www.youtube.com/get_video?video_id='.$vid_code[1].'&t='.$vid_t[1].'=';
}
?>
<html>
<head>
<title>Youtube Téléchargeur</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<center>
<h1>Télécharger les vidéos de Youtube</h1>
<?php
if (!isset($_POST['lien'])) // On vérifie si le formulaire est déjà rempli, sinon on l'affiche
{
echo '
<form method="post">
Lien de la vidéo : <input type="text" name="lien" /><br />
Format de sortit : <input type="radio" name="format" value="flv" checked="checked" /> FLV <input type="radio" name="format" value="mp4" /> MP4<br />
Télécharger sur votre serveur : <input type="radio" name="down" value="oui" checked="checked" /> Oui <input type="radio" name="down" value="non" /> Non<br /><br />
<input type="submit" value="Télécharger" />
</form> ';
}
else // Le formulaire est rempli
{
// On récupère les variables
$lien = $_POST['lien']; // Le lien de la vidéo
$down = $_POST['down']; // Si la vidéo est télécharger sur le serveur
$format = $_POST['format']; // Format désiré
// On récupère les lien de la vidéo
$lien_yt_flv = get_video_url_youtube($lien); // La vidéo en flv
$lien_yt_mp4 = $lien_yt_flv.'&fmt=18'; // La vidéo en mp4
// Si on demande le téléchargement de la video, On la copie sur le serveur
if ($down == "oui")
{
if ($format == "flv") // Le format est en FLV
{
$newname = 'videos/'.time().'.flv'; // On donne un nouveau nom et on ajoute l'extention
copy($lien_yt_flv, $newname);
}
else // Le format est en MP4
{
$newname = 'videos/'.time().'.mp4'; // On donne un nouveau nom et on ajoute l'extention
copy($lien_yt_mp4, $newname);
}
}
// Pour obtenir l'id de la vidéo
$url = $lien.'&';
$regex = '/v=(.+?)&+/';
preg_match($regex, $url, $vid_code);
//On affiche l'image
echo '<img src="http://i1.ytimg.com/vi/'.$vid_code[1].'/default.jpg"><br /><br />';
// On affiche les résultat
echo '<a href="'.$lien_yt_flv.'">Lien depuis Youtube en FLV<br /></a>';
echo '<a href="'.$lien_yt_mp4.'">Lien depuis Youtube en MP4<br /></a>';
// On teste d'abord si on a demandé de copier la vidéo sur notre sevreur
if ($down == "oui")
{
if ($format == "flv") // Le format est en FLV
{
echo '<a href ="'.$newname.'">Lien depuis votre serveur en FLV</a><br />';
}
else // Le format est en MP4
{
echo '<a href ="'.$newname.'">Lien depuis votre serveur en MP4</a><br />';
}
}
// On affiche les permaliens.
echo '<a href ="lien.php?id='.$vid_code[1].'&type=flv">Lien permanant depuis Youtube en FLV</a><br />';
echo '<a href ="lien.php?id='.$vid_code[1].'&type=mp4">Lien permanant depuis Youtube en MP4</a><br /><br />';
}
?>
Attention : Si vous télécharger la vidéo depuis Youtube et non depuis votre serveur, vous devez la renommer en ajoutant .flv ou .mp4 à la fin du fichier téléchagré.
</center>
</body>
</html>
la page : lien.php
======================================
<?php
function get_video_url_youtube($page) // Encore la fonction super sympa :p
{
$url = $page.'&';
$regex = '/v=(.+?)&+/';
preg_match($regex, $url, $vid_code);
$input = file_get_contents($page);
$regex = '/&t=(.+?)&+/';
preg_match($regex, $input, $vid_t);
return 'http://www.youtube.com/get_video?video_id='.$vid_code[1].'&t='.$vid_t[1].'=';
}
// récupère les variables
$id = $_GET['id'];
$type = $_GET['type'];
$lien = 'http://www.youtube.com/watch?v='.$id;
$lien_yt_flv = get_video_url_youtube($lien); // La vidéo en flv
$lien_yt_mp4 = $lien_yt_flv.'&fmt=18'; // La vidéo en mp4
if ($type == "flv") // On vérifie le type
{
header("Location: $lien_yt_flv"); // Puis on redirege vers le lien de téléchargement
}
else
{
header("Location: $lien_yt_mp4"); // idem en cas de mp4
}
?>
Conclusion
Voilà, je crois que c'est tous. Je vais essayer d'améliorer le code, avec vos commentaires. Un grand merci à griffondor pour son soutien ;)
Historique
- 16 mars 2009 00:05:04 :
- Ajout de possiblité de download avec un formulaire, et quelque explication.
- 16 mars 2009 23:38:30 :
- Grande mise à jour avec plusieurs modifications.
- 16 mars 2009 23:41:19 :
- Grosse mise à jour !!
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
telecharger d'un fichier pointé par une url sur le server [ par JahSon777 ]
Bonjour, J'aurai voulu savoir si cest possible de telechager un fichier pointé par une url, dans mon cas une image, dans un repertoire du server
cacher l'url d'un fichier a telecharger [ par taz_dd ]
Bonjourje cherche comment faire pour que si un membre de mon forum clique sur un lien de telechargement il ne voit pas la vrai URL du fichier mais une
Formualire saisie d'URL vidéo : comment faire ? [ par aloisio11 ]
Bonjour à tous,Je développe un site en PHP/MySQL sur lequel j'ai un formulaire dans lequel le visiteur pourra saisir un lien vers une vidéo (Youtube,
pobleme de telechargement [ par nita2006 ]
Bonjour , je souhaite telechrager oracle sql developper , qui est un outil qui permet de construire des graphes par des requete sql , le probleme c es
recherche programmeur php [ par Clementdu17240 ]
Bonjour. Je recherche activement un programmeur php pour un jeu en ligne. Les bases du jeu sont déjà faites, il sagirait de trouver une personne pour
Tester une url avec profil et mot de passe. [ par artygone ]
Bonjour à tous. J'ai un problème qui me semble un peu complexe à résoudre. Je vais essayer d'être cair, même si c'est un peu long,veuillez m'en excuse
Probleme avec PREG_REPLACE [ par geantville ]
Bonjour,Je fais un site avec redirection de lien , et totalisation ( stats) de clicsCependant alors que j'utilise :$pageDistante -> page lu sur le
Url en php [ par breezer666cs ]
J'ai 1 bouton et un hyperlink dans mon code: <input type="button" onclick="document.location.href='./accueil.php?i=0&j=0'" name="bob" valu
url help [ par keith166 ]
salut les phpistj'ai une question:comment je peux créer un url com : www.nomdusite.com/nompageMerci
telecharger applicatioin dynamique forum [ par dgfb ]
bonjour , je veux telecharger un aplication dynamique forum avec sa base de donnees'il vous plait m'aidez a telech<img src="http://www.p
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : IMPORT CSVRE : IMPORT CSV par ykhider
Cliquez pour lire la suite par ykhider
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|