Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

RÉCUPÉRATION DU CODE HTML D'UNE URL VIA JMAIL.


Information sur la source

Catégorie :Astuces Niveau : Débutant Date de création : 11/08/2003 Date de mise à jour : 11/08/2003 17:30:04 Vu : 5 575

Note :
Aucune note

Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

Description

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

  • <%@ 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>
<%@ 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 !

 

Commentaires et avis

signaler à un administrateur
Commentaire de Bud le 11/08/2003 18:07:22

Tu sais avec quelle version de JMail minimum ça marche?

signaler à un administrateur
Commentaire de fabrice69 le 11/08/2003 20:10:16 administrateur CS

pas mal et bonne astuce pour un pb svt demandé.

F___

signaler à un administrateur
Commentaire de Yannick74 le 12/08/2003 08:24:32

Non je ne sais pas avec quelle version "minimum" de JMail ca marche.
Il y a juste a regarder dans la doc de ta version si la function "GetMessageBodyFromURL" est implémentée !

Fabrice, c'est vrai que j'ai cherché sur beaucoup de site, le problème se pose souvent, mais les solutions proposés sont souvent complexes.

signaler à un administrateur
Commentaire de Bud le 12/08/2003 13:53:22

Bon, j'ai la version 3.7 de Jmail, la fonction "GetMessageBodyFromURL" est implémentée, mais ça ne marche pas...

signaler à un administrateur
Commentaire de Yannick74 le 12/08/2003 14:14:05

Peut être qu'il faut faire un mail.execute
En effet j'ai été surpris que le code de la page soit rapatrié directement sur le GetMessageBodyFromURL.

Je pense que dans ta version, le code ne sera rapatrié que sur un mail.execute , il faut voir si sans les paramètres minimum (serveur SMTP, adresse mail du SENDER et un DESTINATAIRE) ca peut marcher.

Sinon tu devras en plus renseignez tous ces paramètres (voir doc) pour que ca marche.

Et je te dis tous çà sans pouvoir tester.

signaler à un administrateur
Commentaire de Targos le 26/02/2004 15:35:00

Ca marche pas avec un lien ASP.NET (.aspx) !!!!!

Quelqu'un a la solution ?

signaler à un administrateur
Commentaire de _Thy_ le 10/11/2005 11:27:40

Excellente solution mais je n'ai ni Jmail ni la possibilité de l'installer, ni bien sur .Net

Pour ceux qui sont dans mo cas (en asp "tout court") j'ai trouvé ceci qui fonctionne bien :
http://www.aspfaq.com/show.asp?id=2173

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,406 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.