Appeler une page web et recupérer le source [Perl] - Perl - Programmation
Marsh Posté le 03-09-2002 à 20:17:06
bah bonne app alors mais t'touffe pas comme même, on sait jamais tu pourrais peut-etre m'aider pour mon pb
Marsh Posté le 03-09-2002 à 20:29:15
Tu te rends compte que ce que tu veux faire est dans le manuel PHP ?
http://fr.php.net/manual/fr/features.remote-files.php
Par contre, écrire un parseur pour toute une page HTML ça va pas être évident.
Éventuellement si tu traîtes des documents XHTML tu peux utiliser les fonctions DOM de PHP pour manipuler ton fichier, car le XHTML est du XML
Marsh Posté le 03-09-2002 à 20:31:42
gm ça va pas l'aider trop php lui il veut le coder en perl
et bien sur c possible mais bon perl et moi ça fait beaucoup et j'ai pas assez de doitgs pour compter alors je sors
Marsh Posté le 03-09-2002 à 20:40:20
hmmm merci pour vos infos
en php, ba pourquoi pas j'vais jeter un coups d'oeil par là alors
le parser est pas trop complexe il s'agit juste de recuperer une chaine redondante dans le source renvoyé.
j'avais fais la liaison parser -> perl mais si php sait le faire c'est aussi bien
++
Marsh Posté le 03-09-2002 à 20:42:40
Par exemple, vous pouvez suivre l'exemple suivant pour ouvrir un fichier sur un serveur web distant, analyser les résultats pour extraire les informations dont vous avez besoin, et ensuite l'utiliser dans une requête de base de données, ou simplement éditer les informations dans le style de votre site |
gm, tu t'y est prit comment pour la recherche ?
google, recherche dans le fichier d'aide ou bien tu connaissais l'astuce avant ?
Marsh Posté le 03-09-2002 à 20:44:19
Taureau a écrit a écrit : gm ça va pas l'aider trop php lui il veut le coder en perl et bien sur c possible mais bon perl et moi ça fait beaucoup et j'ai pas assez de doitgs pour compter alors je sors |
Je sors aussi
Marsh Posté le 03-09-2002 à 20:47:32
Erwanfr a écrit a écrit : gm, tu t'y est prit comment pour la recherche ? google, recherche dans le fichier d'aide ou bien tu connaissais l'astuce avant ? |
Bah je savais qu'il y avait un chapitre sur l'ouverture des fichiers à distance. Par contre c'est un coup de bol que ça traite de l'analyse d'un fichier HTML
Bon désolé j'avais crû lire [PHP] dans ton sujet, mais je suppose que ceci doit être tout aussi facilement réalisable en Perl.
Marsh Posté le 03-09-2002 à 20:47:34
gm revient finalement il veut bien en php
(pardon erwanfr )
Marsh Posté le 04-09-2002 à 17:34:45
En Perl faire ca c trop simple
utilise le module LWP, je l'ai fait pour differents
sites et ca marche à merveille, par contre, s'il y a des cookies
ou d'autres du style il faudrat un peu chercher.
Sur le site de www.CPAN.org tu trouvera toutes la doc que tu veux
Marsh Posté le 04-09-2002 à 22:11:24
stef_dobermann a écrit a écrit : En Perl faire ca c trop simple utilise le module LWP, je l'ai fait pour differents sites et ca marche à merveille, par contre, s'il y a des cookies ou d'autres du style il faudrat un peu chercher. |
Voilà un exemple (tiré de la documentation perl sur le module LWP ... cherche un fichier LWP.html dans ton dossier d'installation de perl) :
Code :
|
Tu récupères donc dans $res->content le contenu de ta page.
Marsh Posté le 27-09-2002 à 19:49:33
et avec lwp::simple c'est encore plus simple!
ca donne un truc genre:
use LWP::Simple;
$source = get("http://www.tralala.fr" );
et si t'a rien dans ta variable ben c'est k'ya eu une erreur...
difficile de faire plus simple!
Marsh Posté le 23-04-2004 à 15:17:02
pospos a écrit : |
euh : ça ne marche pas du tout !
ptêt que ça vient du fait que je sois derrière un proxy ?
Marsh Posté le 23-04-2004 à 17:33:06
personne ne saurait comment modifier ces deux lignes de codes pour qu'elles supportent le passage par un proxy ?
Marsh Posté le 23-04-2004 à 21:32:15
pospos a écrit : et avec lwp::simple c'est encore plus simple! |
justement jallais le posté, jai découvert ca aujourd'hui
Marsh Posté le 24-04-2004 à 11:49:17
Code : |
apparement tu pourra pas utiliser LWP::Simple derriere un proxy, d'ailleurs son nom l'indique, c'est des fonctions simples, donc derriere un proxy, c'est pas simple
il ne te reste plus qu'a utiliser LWP::UserAgent qui d'un autre coté offre des fonctionnalités interessantes (cookie, referer...)
Marsh Posté le 24-04-2004 à 12:05:08
Tu veux faire quoi au final avec ta page parsée? Il existe peut être un programme qui fait déjà ce que tu veux?
Marsh Posté le 24-04-2004 à 22:30:30
avec LWP::Simple (et LWP si on ne configure pas le proxy exmplicitement) il faut mettre ses parametres de proxy dans la variable d'environnement "HTTP_Proxy" (et renseigner "NO_Proxy" pour les adresses locales)
on peut aussi lme faire localement dans le script:
Code :
|
Marsh Posté le 26-04-2004 à 12:34:34
J'en apprends tous les jours...
trop bien ce topic que j'avais jamais parcouru.
Marsh Posté le 18-05-2004 à 02:41:53
pour des récupérations en masse tu peux aussi utiliser getstore(), ce qui te permet de stocker toutes tes pages sur disque et de les découper après, comme ca si tu foires au découpage tu peux toujours recommencer facilement
du style :
Code :
|
Marsh Posté le 26-05-2004 à 23:34:41
system("lynx -term=vt100 -source $url > $pagesource\n" )
en fait jutilise ca pour recuperer une page source, pcq la cde wget ne marchait pas.
Est-ce possible que je ne recupere pas la meme page source que quand je fais un copier coller de ma page source manuellement?
J'ai aussi un programme qui parse la page, et dans un cas il marche (copier coller) et pas dans l'autre (source recupere avec lynx)... arf!
Merci a ceux qui sauront m'eclairer de leur lumiere!
Marsh Posté le 26-05-2004 à 23:45:39
pk tu utilise lynx quand ya des fonctions propres à perl pour le faire...
Marsh Posté le 27-05-2004 à 02:08:01
Burgergold a écrit : pk tu utilise lynx quand ya des fonctions propres à perl pour le faire... |
explique toi ca m'interesse aussi !
Marsh Posté le 27-05-2004 à 03:40:46
merde vous avez lu le topic? ca montre comment récupérer le contenu html d'un url par des modules perl!
Code :
|
Marsh Posté le 27-05-2004 à 18:39:44
Burgergold a écrit : merde vous avez lu le topic? ca montre comment récupérer le contenu html d'un url par des modules perl!
|
bah de ce que j'en avais compris, les gars etaient pas tous d'accord sur la methode a employer
Marsh Posté le 27-05-2004 à 18:46:06
si !!!
j'ai lu, j'ai essaye, et ai pas reussi ;-( (j'dis pas que ca marche jamais..)
avec get et wget, j'obtiens rien! Je cherche a recuperer le source d'une page qui est le resultat d'une recherche... C'est peut etre ca le hic...
Marsh Posté le 28-05-2004 à 04:32:46
jai deja test sur un cgi avec des paramètres et ca fonctionne #1
Marsh Posté le 03-09-2002 à 19:57:30
Salut, je voudrais appeler une page web et pouvoir en récupérer le source afin de le parser.
Pouvez vous me donner une piste pour cela ?
en gros
- appel de la page + paramètre
- au lieu d'afficher le resultat, le stocker en méméoire
- parser la mémoire et recupérer des elements
a+