View previous topic :: View next topic |
Author |
Message |
l.slysz Apprentice
Joined: 03 Jun 2005 Posts: 256
|
Posted: Tue Dec 13, 2005 9:23 am Post subject: [programmation] recuperer infos site webs via php ou java |
|
|
Bonjour à tous
J'avoue que ce forum n'est pas forcement le meilleur endroit pour poster ce genre de chose, mais comme je sais qu'il est peuplé par une bande de joyeux génis, j'espere que vous pourrez m'aider
Voici ce que j'aimerai realiser :
1) Une petite appli (php ou java) dont le but principal serait de se connecter à un site ou ensemble de site via authentification (login + pass) pour y recuperer des informations.
2) Ces informations recupérées, je souhaite les traiter , m'envoyer le resultat par mail.
La partie 2 ne pose pas vraiment de probleme, du traitement pur et dur et un envoi de mail en php, c'est pas bien compliqué
Mais concernant la partie 1 je seche : comment gerer le login sur le site distant ? pour seulement ensuite recuperer les infos sur le site
Voila, si vous avez deja pratiqué ce genre d'exercice ...
Je serais tres heureux de lire vos remarques (pertinantes si possible ) à ce sujet.
Merci d'avance
Laurent |
|
Back to top |
|
|
netfab Veteran
Joined: 03 Mar 2005 Posts: 1904 Location: 127.0.0.1
|
Posted: Tue Dec 13, 2005 1:48 pm Post subject: |
|
|
Salut,
Quote: | Mais concernant la partie 1 je seche : comment gerer le login sur le site distant ? |
Par htaccess ou par session php.
Tout dépend de la façon dont va fonctionner ton application.
Je pense que c'est possible, mais, la question est : tu contrôles les serveurs distants ? |
|
Back to top |
|
|
shingara Tux's lil' helper
Joined: 26 Dec 2004 Posts: 137 Location: Paris, FR
|
Posted: Tue Dec 13, 2005 2:04 pm Post subject: |
|
|
Il y a aussi tout simplement les socket.
PHP gére en effet les socket très bien. Ensuite PHP a aussi une gestion de PHP en natif
Java a bien sur aussi tout ca
Apres ce n'est qu'un choix de language _________________ shingara |
|
Back to top |
|
|
spider312 Veteran
Joined: 02 Oct 2004 Posts: 1274 Location: France > Savoie > Chambery
|
Posted: Tue Dec 13, 2005 4:46 pm Post subject: |
|
|
NetFab wrote: | Salut,
Quote: | Mais concernant la partie 1 je seche : comment gerer le login sur le site distant ? |
Par htaccess ou par session php.
Tout dépend de la façon dont va fonctionner ton application.
Je pense que c'est possible, mais, la question est : tu contrôles les serveurs distants ? | Euh, le problème n'est pas qu'un utilisateur soit authentifié sur son programme, mais que son programme s'authentifie sur un autre programme
Pour ça, tu devras analyser la façon dont se fait l'auth sur le site, et faire ton programme de façon à ce qu'il fasse exactement ce que ferait un client, en regardant la façon dont les variables se passent d'une page à l'autre (de la page du formulaire d'auth à la page qui gère l'auth, puis d'une page quelconque à une autre page quelconque, etc ...)
Enfin dans tous les cas, il n'y a pas de solution ultime, c'est selon le site en face, si tu as la chance qu'il gère des sessions et que les variables se passent en GET, ce ne sera surement pas trop dur ... |
|
Back to top |
|
|
l.slysz Apprentice
Joined: 03 Jun 2005 Posts: 256
|
Posted: Tue Dec 13, 2005 9:00 pm Post subject: |
|
|
hello
bon deja, je vouis remercie de vous etre un peu creusé la tête sur mon 'probleme'
bon pour le login:
le login + pass sont transmis à une page .php via la methode post
et je n'ai aucune idée de comment faire passer le contenu de ces variables au .php afin de feinter mon login et donc pouvoir recuperer les infos qui m'interessent. |
|
Back to top |
|
|
bibi.skuk Guru
Joined: 01 Aug 2005 Posts: 425
|
Posted: Tue Dec 13, 2005 9:30 pm Post subject: |
|
|
l eplus simple, c'est de faire un petit robot... bon, de la a pouvoir te dire exactement comment faire, j'avoue mon incompétence. |
|
Back to top |
|
|
l.slysz Apprentice
Joined: 03 Jun 2005 Posts: 256
|
Posted: Tue Dec 13, 2005 9:34 pm Post subject: |
|
|
bah j'esperais ne pas à avoir à en arriver la,
tout ça pour quelque chose qui soit capable de me dire que j'ai oublié d'aller nourrir mon pingouin virtuel et que j'ai x messages privés mes forums favoris, ça fait compliqué qd meme
pourtant c'est pas bien compliqué ce que je veux faire :
fournir 2 variables à un .php, et lire ce que me repond le .php |
|
Back to top |
|
|
bibi.skuk Guru
Joined: 01 Aug 2005 Posts: 425
|
Posted: Tue Dec 13, 2005 9:38 pm Post subject: |
|
|
le gros probleme, c'est la gestion de l'authentification, pour garder les cookies tout ca... |
|
Back to top |
|
|
spider312 Veteran
Joined: 02 Oct 2004 Posts: 1274 Location: France > Savoie > Chambery
|
Posted: Tue Dec 13, 2005 10:29 pm Post subject: |
|
|
l.slysz wrote: | bah j'esperais ne pas à avoir à en arriver la,
tout ça pour quelque chose qui soit capable de me dire que j'ai oublié d'aller nourrir mon pingouin virtuel et que j'ai x messages privés mes forums favoris, ça fait compliqué qd meme | MDR en effet
Sinon, derrière, tu sais si c'est géré par cookie ? parcequ'en effet, ça risque d'être tendu dans ce cas
Sinon, pour le POST, je sais pas non plus, si j'avais à le faire, je ferais un script PHP/JS avec un form en HTML et le JS qui le valide, c'est moche mais bon ... |
|
Back to top |
|
|
shingara Tux's lil' helper
Joined: 26 Dec 2004 Posts: 137 Location: Paris, FR
|
Posted: Wed Dec 14, 2005 8:41 am Post subject: |
|
|
Si tu sais qu'elle type de donnée tu dois envoyer, je te conseille d'utiliser un système de javascript.
En effet tu peux très facilement valider une page HTML défini à l'avance et mettre dans ton javascript un petit .submit et ainsi envoyer ton formulaire avec tes posts. Ensuite pour récupèrer le contenu, tu réutilises encore javascript.
Je pense qu'il faut s'orienter vers un système style AJAX. _________________ shingara |
|
Back to top |
|
|
marvin rouge Veteran
Joined: 01 Aug 2004 Posts: 1422 Location: Villa Lumierrante, Zonelibre
|
Posted: Wed Dec 14, 2005 8:54 am Post subject: |
|
|
Si c'est par cookies, alors c'est possible : par exemple, avec net-misc/blogtk tu peux te connecter dur Dotclear (qui utilise une authentification par login+password + un cookie jusqu'à ta deconnexion). |
|
Back to top |
|
|
kochka Tux's lil' helper
Joined: 28 Aug 2005 Posts: 119 Location: Paris
|
|
Back to top |
|
|
l.slysz Apprentice
Joined: 03 Jun 2005 Posts: 256
|
Posted: Wed Dec 14, 2005 6:24 pm Post subject: |
|
|
houla, bon ben j'ai de la lecture moi
sinon, je ne pense pas qu'il y ait une gestion de cookies, puisque en actualisant la page, on se retrouve sur une demande de re login ....
je vais potasser toutes vos solutions
sinon de mon coté, j'ai trouvé quelque chose de sympa en java :
http://java.sun.com/docs/books/tutorial/networking/urls/readingWriting.html
La section Writing to URLConnection a l'air de correspondre à ce que je veux faire malheureusement, j'ai des soucis de compilation avec le HTTPCLIENT : NVPair bloque à la compilation puisque non trouvé, alors que le fourni bien le .jar de httpclient dans le classpath
allez, je vais creuser parmis vos trouvailles
merci |
|
Back to top |
|
|
gbetous l33t
Joined: 15 Jan 2004 Posts: 679 Location: Toulouse
|
Posted: Wed Dec 14, 2005 9:07 pm Post subject: |
|
|
pour faire ca, un simple script shell suffit !
curl pour télécharger la page, avec cookies, login et tout et tout
awk, sed pour digérer le html et faire des fichiers texte
mail pour envoyer tout ca !
attention, pour l'histoire du pingouin virtuel : certains sites surveillent les robots (j'avoue que je sais pas trop comment ils les detectent) et sanctionnent fortement leur utilisation... (je le sais, je me suis déjà fait tirer les oreilles )
EDIT : j'ai retrouvé la syntaxe qui va bien (pour du POST) :
Code: |
curl -L -d "pseudo=${PSEUDO}&password=${PASSWORD}" -c ${COOKIE_FILE} ${SITE}/${PAGE_LOGIN} > login.html
|
|
|
Back to top |
|
|
folkk n00b
Joined: 10 Dec 2005 Posts: 7
|
Posted: Wed Dec 14, 2005 9:56 pm Post subject: |
|
|
facile pour detecter un robot mal fait .. quand tu utilise un navigateur , il envoie une entete spécifique .. quand tu utilise un programme et bien cette entete n'est pas envoyée toute seule , donc dans 90% des cas elle n'est pas envoyé ..
biensur tu peux le faire a la main (maintenant en PHP je sais pas dutout comment spécifier les headers d'une requete ... je sais le faire en VB sinon )
maintenant il doit surement y avoir d'autre methode pour contourner tout ca , perso c'est la seule que je connaisse! |
|
Back to top |
|
|
l.slysz Apprentice
Joined: 03 Jun 2005 Posts: 256
|
Posted: Wed Dec 14, 2005 10:02 pm Post subject: |
|
|
hé ben !
bon je suis parti pour utiliser quelque chose de similaire mais en php, je maitrise pas assez les scripts shell pour tenter l'aventure en ce moment
j'en ait un peu chié, à cause du systeme de login plutot compliqué
l'envoi du login + pass me genere un numero de session
ce numero de session et envoyé à un .php qui va generer un PHPSESSION (peut etre un hash)
et la page qui contient les infos qui m'interessent utilise le numero de session et le supposé hash
yahou !
mais j'en suis venu à bout
y me reste une chose à faire, mais alors la je vois pas du tout par ou prendre le betail : je me suis jamais frotté l'envoi de mails
bon j'ai regardé, ça a pas l'air compliqué au niveau de php : une bete fonction mail() qui utilise la commande sendmail de mon systeme.
le bemole, c'est que je sais pas comment on configure la commande sendmail pour qu'elle utilise les logins et pass de mon mail chez mon fai |
|
Back to top |
|
|
blasserre Veteran
Joined: 10 Feb 2004 Posts: 1362 Location: Lille, Vlaanderen
|
Posted: Wed Dec 14, 2005 10:43 pm Post subject: |
|
|
l.slysz wrote: | le bemole, c'est que je sais pas comment on configure la commande sendmail pour qu'elle utilise les
logins et pass de mon mail chez mon fai |
si Code: | # which sendmail
/usr/sbin/sendmail
# ls -l /usr/sbin/sendmail
lrwxrwxrwx 1 root root 15 déc 13 22:35 /usr/sbin/sendmail -> /usr/sbin/ssmtp |
alors
Code: | # nano /etc/ssmtp/ssmtp.conf |
_________________ benj
technicien professionnel, ascendant winner |
|
Back to top |
|
|
ultrabug Developer
Joined: 24 Jan 2005 Posts: 698 Location: Paris
|
Posted: Thu Dec 15, 2005 10:16 am Post subject: |
|
|
Quand tu auras fini je suis assez curieux de voir le code source stp merci ! |
|
Back to top |
|
|
l.slysz Apprentice
Joined: 03 Jun 2005 Posts: 256
|
Posted: Sun Dec 18, 2005 1:10 pm Post subject: |
|
|
ok ultrabug, pas de soucis
merci blassere pour cette demonstration de mon incompetence
donc j'ai été farfouiller dans le ssmtp.conf, mais je n'ai rien trouvé qui me permette de specifier un user/pass à utiliser pour tous les envois
en cherchant dans le man, j'ai trouvé les parametres -au et -ap qui permettent en ligne de commande de specifier un user / pass à utiliser, y doit bien avoir moyen de les mettre dans le fichier de conf non ?
et sinon qd j'essaye d'envoyer un mail via le shell et la commande ssmtp et ça bloque, un coup de ctrl+D me fait apparaitre un message d'erreur de ssmtp et l'aventure s'arrete la |
|
Back to top |
|
|
|