Estrarre un video da YouTube con ASP
Pagina 1 di 2
Introduzione
Molte applicazioni Web, in special modo quelle dei blog e delle community, permettono di inserire video da YouTube semplicemente specificando la URL della pagina contenente il video stesso, NON quindi copiando il codice embeded messo a disposizione da YouTube stesso.
Il motivo di questa scelta è duplice:
- non tutti sono capaci di copiare il codice embed;
- in genere si evita dai far inserire codice HTML agli utenti che potrebbero inserire del codice pericoloso (es. Javascript) o che in qualche modo potrebbe ledere al layout della pagina corrente.
Vediamo dunque come estrarre un video da YouTube in un'applicazione Web scritta in ASP.
Il form HTML
Creiamo innanzitutto il file youtube.asp che conterrà sia il form HTML che il codice ASP per la verifica e la visualizzazione del video.
Segue dunque il codice HTML del modulo:
<form method="post" action="youtube.asp"> <input type="text" name="url" size="50"> <input type="submit" name="invio" value=" Estrai video"> </form>Si tratta semplicemente di un form che contiene una casella di testo per la specifica della URL della pagina YpuTube contenente il video, ed il bottone di submit.
Volendo possiamo (vedremo dopo come) lavorare anche sulle dimensioni del video, per permettere di inserirlo in formato piccolo, medio, grande ed "enorme", come YouTube stesso permette di fare in fase di prelevamento del codice embedded.
Ma andiamo per gradi.
Il codice ASP per la cattura del video
Inseriamo questo codice sotto al form:
<%
If Request.Form("invio") <> "" Then
Dim url
url = Request.Form("url")
If InStr(url, "http://www.youtube.com/watch?v=") = 0 Then
%>
<p>Inserisci una URL di YouTube valida!</p>
<%
Else
url = Replace(url, "http://www.youtube.com/watch?v=", "")
%>
<object width="480" height="385">
<param name="movie" value="http://www.youtube.com/v/<%=url%>&hl=it_IT&fs=1&"></param>
<param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/<%=url%>&hl=it_IT&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed>
</object>
<%
End If
End If
%>
Verifichiamo che il form sia stato inviato e che la casella di testo contenga una URL di youtube valida. A questo punto ne recuperiamo il valore e scremiamo la URL completa recuperando solo il valore della QueryString:
http://www.youtube.com/watch?v=ABCDEFGdove ABCDEFG rappresenterebbe l'identificativo univoco che YouTube stesso assegna al video.
Non facciamo poi altro che stampare all'interno del codice HTML embedded il valore della casella di testo (opportunamente scremato, come suddetto) nei punti in cui è richiesto.







