Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1550 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Front-end java pour forum web. Comment faire ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Front-end java pour forum web. Comment faire ?

n°1539101
kizkoool
Posté le 05-04-2007 à 16:38:41  profilanswer
 

Bonjour,
 
Je souhaiterais créer un front-end en java pour permettre d'interagir avec un forum web sans utiliser de browser.
Pour cela, j'aurais besoin d'un parser de pages qui permettrait d'obtenir les "HTML forms", d'accéder et éditer leurs champs.  
De plus, il faudrait que je puisse ensuite soumettre ces forms au site web.
 
Comment puis je m'y prendre ?
 
Merci

mood
Publicité
Posté le 05-04-2007 à 16:38:41  profilanswer
 

n°1539109
MagicBuzz
Posté le 05-04-2007 à 16:52:13  profilanswer
 

avec beaucoup de courrage :D
 
sérieusement, aucune idée en java.
 
regarde si t'as une classe comme en .NET "webclient", qui permet de charger une page web et accéder ensuite à son contenu via des objets comme en javascript.

n°1539138
kizkoool
Posté le 05-04-2007 à 17:35:13  profilanswer
 

Oui, je crois que je me suis fixé un bon défi là. J'espère que je ne vais pas lacher en cours de route comme souvent ...
 
Bon j'ai réussi à dénicher un composant qui pourrait m'aider à implémenter mon projet : Apache Jakarta HttpClient
 
Faut que je m'y plonge ...

n°1540440
Jubijub
Parce que je le VD bien
Posté le 09-04-2007 à 18:13:35  profilanswer
 

y'a un parser HTML de base dans Java qui sait donc lire le HTML...
 
idéalement si le forum que tu veux consulter est XHTML, un simple parseur XML te suffit...
 
de tt façon tous les parsers feront la chose suivante : ils te demanderont d'implémenter des méthodes à appeler en cas de détection d'un div, d'un <p>, etc...
 
Sinon y'a peut etre plus simple si tu veux juste poster, mais pas lire : il te suffit de savoir à quoi ressemble ce que renvoit le forum quand tu postes (y'a une extension firefox pour ça, c'est web developper je crois), et du coup envoyer exactement la même chose...


Message édité par Jubijub le 09-04-2007 à 18:15:25

---------------
Jubi Photos : Flickr - 500px
n°1540721
kizkoool
Posté le 10-04-2007 à 13:37:09  profilanswer
 

Ok, Jakarta HttpClient a résolu la problématique d'interfaçage en me permettant de récupérer les pages HTML, de poster des formulaires et de gérer les cookies.
 
Mais, il me restait encore la question du parsing HTML pour pouvoir récupérer les informations voulues.
J'ai imaginé différentes solutions avec plus ou moins de succès.  
Finalement, j'ai opté pour celle qui me se semble la plus souple et adaptable facilement (on sait jamais si l'auteur du site cible aurait par exemple la bonne idée de changer son layout).
 
L'idée de base que j'ai voulu développer consiste à parser la page web vue comme un document XML.
Mais comme le HTML trouvé sur le web est non conforme dans au moins 90% des cas au bas mot, il m'a fallu utiliser au préalable un convertisseur-nettoyeur HTML -> XML.  
D'après mes recherches, le parser Java qui a le plus le vent en poupe est TagSoup. Je l'ai testé, franchement il est médiocre. Pas mal de choses ne sont pas parsées correctement, inutilisale pour ma part.
Je me suis rabattu sur Apache CyberNeko HTML qui lui me sort un document XML aux petits oignons.
 
Reste ensuite la question de l'extraction d'informations à partir du XML. Et pour ça la nature est bien faite puisqu'il existe un langage de requête fait pour ça et, cerise sur le gateau, normalisé par le W3C. Ce langage c'est XQuery.
Le parser XML Xercès sur lequel s'appuie CyberNeko n'implémentant pas XQuery,  je me suis rabattu sur le requêteur XQuery Java dénommé SAXON.
 
Avec ces briques, je me suis fait un proof-of-concept de cette chaine de traitement et ça marche du feu de dieu !  [:trompette1]  
Bon, maintenant que les contraintes techniques sont résolues, il me reste "plus" qu'à batir mon appplication là dessus. :bounce:

n°1540988
Jubijub
Parce que je le VD bien
Posté le 10-04-2007 à 20:35:45  profilanswer
 

c quoi le but final tu veux en faire quoi de ces infos ?


---------------
Jubi Photos : Flickr - 500px
n°1541417
kizkoool
Posté le 11-04-2007 à 16:10:17  profilanswer
 

Héhé, bonne question.  
 
L'idée d'interaction avec un forum web que j'ai évoqué dans mon premier post était un peu un prétexte.  
Mon projet est un peu plus complexe en fait.  :whistle:  
 
Mais le but est sans importance, c'est un dev. perso à usage perso. Enfin pour le moment en tout cas. :hello:

Message cité 1 fois
Message édité par kizkoool le 11-04-2007 à 18:03:40
n°1541613
Jubijub
Parce que je le VD bien
Posté le 11-04-2007 à 20:01:31  profilanswer
 

un spambot :D


---------------
Jubi Photos : Flickr - 500px
n°1541630
bugbreeder
Posté le 11-04-2007 à 20:57:32  profilanswer
 

kizkoool a écrit :

Mais le but est sans importance, c'est un dev. perso à usage perso. Enfin pour le moment en tout cas. :hello:


 
Moi j'dis qu'il faut en faire la base d'un projet open-source d'office, en tant que chef de projet, effectivement je crois qu'un frontal graphique d'edition de site web n'existe pas encore (sauf peut etre des navigateurs comme SeaMonkey dont la partie edition sait se connecter en WebDav).
Etre responsable d'un bon projet open-source, c'est le meilleur moyen de se faire connaitre sur le plan professionnel.
Si ca marche bien, tu feras partie des elus qui n'ont plus besoin de publier leur CV pour trouver du boulot et que les boites vont chercher  [:vancrayenest]  ...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Front-end java pour forum web. Comment faire ?

 

Sujets relatifs
Compilateur et interpréteur java sur clé usbMéthode pour contribuer a un projet Java
pointeur et JAVARendre Forum "Populaire"
[C++ et Java] Communication par socket[Java - cryptographie] Problème de vérification de signature
Conception d'un chat en java avec rmi[Java] Connaître l'espace disque disponible
[Java - Cryptographie] Décryptage RSA par block (multipart decryption)[Java] Générer un hash MD5
Plus de sujets relatifs à : Front-end java pour forum web. Comment faire ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR