Récupération du code html d'une url via jmail.

Contenu du snippet

Un code simple pour récupérer le code HTML retourné par une URL.
Idéal pour enregistrer au format HTML des pages dynamiques ASP, tester le contenue de pages pour voir si elles ont été modifiées, enregistrer le contenue d'une page dans votre basse de donnée...

Source / Exemple :


<%@ LANGUAGE = VBScript %>
<%
Response.Buffer = True
Response.Expires = 0
Response.ExpiresAbsolute=now() - 1

'Pour des tests changez cet URL
	URL_DE_DEMO = "www.google.fr"
' www.votresite.com/votrepage.asp?param1=1&param2=2... marche aussi !
' L'entête http:// n'est pas obligatoire.

function GetHTML_FromURL(votreURL)
	dim mail
		'*************************************
		' Récupération de page Web en ASP.	
		' Astuce simple nécessitant JMail.
		' .:| Yannick :: ANNECY :: FRANCE |:.
		'*************************************

	Set mail = Server.CreateObject("JMail.SMTPMail") 'Composant de www.duplo.se
	'Ce composant permet l'envoi d'un mail dont le contenu est une page web !
	
	mail.GetMessageBodyFromURL(votreURL)
	'On recupère la page que l'on veux, une page ASP ou PHP arrive en HTML (executée) !
		
	GetHTML_FromURL = ""& mail.HTMLBody &""
	'On renvoi le code HTML contenu maintenant dans la propriété HTMLBody
	
end function
%>
<HTML>
<TITLE>ASP .:|Yannick|:.</TITLE>
<BODY bgcolor="#C0C0C0">
<H1>RECUPERATION DE CODE HTML VIA ASP</H1>
<HR>
Le code source de <b><a href="<%if not ""&left(URL_DE_DEMO,7)&""="http://" then%>http://<%end if%><%=URL_DE_DEMO%>" target="_blank"><%=URL_DE_DEMO%></a></b>&nbsp;:<br>
<TEXTAREA cols="100" rows="25">
<%response.write GetHTML_FromURL(URL_DE_DEMO)
' Affiche le code HTML de l'URL sur votre page.

' PS :
' pour un enregistrement en base de donnée via SQL
' n'oubliez pas de faire un replace(CODE_HTML,"'","''")
' Car la page récupérée peut contenir des ' qui font foirer les requettes SQL !
%>
</TEXTAREA>
</BODY>

Conclusion :


Voilà, ca évite de jouer avec des Client Winsock sur le port 80 !

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_Yannick74)