/home/scinfo/public_html/index.php:18:string 'ATTENTION: Ce site ne sera plus displonible à partir de Septembre 2017' (length=71)
DashWeb :: Sciences Informatiques (ULg)
Nouveau sujet Répondre Imprimer Syndication RSS 2.0

DashWeb


Ingénieur
  • Messages : 29
  Lien vers ce message 02 Avril 2013, 0:22
Essai de compréhension de l'énoncé:

1) Comment sont déterminés les liens p1 à P7 sur l'exemple?

2) A quoi servent/A quel moment utilise-t-on les 6 variables (postpage,postfresh)?

Merci

Ingénieur
  • Messages : 17
Message édité 3 fois, dernière édition par threepwood, 03 Avril 2013, 12:21     Lien vers ce message 03 Avril 2013, 11:41
1)
Citation
Otherwise, the DOM tree for the content returned by the web server is built and the
postpage path is used to isolate P1 : : : Pn. On the document depicted on Fig. 2, the
path //ul//a/@href would return that list.

Donc tous les a/@href.

2) C'est ce qui te sert de cache pour les liens des images et/ou le text que tu veux ajouter à tout les liens du point 1).

Je n'ai pas encore commencé mon projet, donc je dis p-t de la merde...
Visiteur
  Lien vers ce message 03 Avril 2013, 16:11
Réponse de Sylvain Martin:
1) A l'aide d'une expression XPath adaptée à ce site qui capture "le champ
href de la dernière balise <a> dans chaque <div class="...">
2) A définir les expressions adaptées à un site donné.

D'après ce que j'ai compris, il faut lancer d'abord "localhost:8010/setup?site=..." pour configurer un site où les variables postpage et thumbing sont obligatoires pour ensuite lancer la commande "localhost:8010/dash?site=..." afin d'avoir le résultat de DashWeb.

Qqn pourrait confirmer?
Photo de sylvain

Assistant
  • Messages : 48
  Lien vers ce message 08 Avril 2013, 10:57
Réponse de Sylvain Martin:
D'après ce que j'ai compris, il faut lancer d'abord "localhost:8010/setup?site=..." pour configurer un site où les variables postpage et thumbing sont obligatoires pour ensuite lancer la commande "localhost:8010/dash?site=..." afin d'avoir le résultat de DashWeb.


En effet, s'il n'y a pas eu de setup?site=xyz.org avant dash?site=xyz.org, les variables de configurations pour ce site sont vides, et le programme se comporte en conséquence.

J'en profite pour répéter une réponse déjà donnée: oui, les sections Bac3 et Prepa doivent toujours fournir leur propre implémentation du protocole HTTP (entamée dans ThumbWeb) pour DashWeb.


May the Source be with You. -- Qui veut coder sur DS ?
Hors ligne Jef
Photo de Jef

2ème Ms.
  • Age : 25 ans
  • Messages : 555
Message édité 1 fois, dernière édition par Jef, 15 Mai 2013, 22:15     Lien vers ce message 15 Mai 2013, 22:13
Est-ce que quelqu'un a réussi à gérer l'UTF-8 correctement pour afficher les accents ?

J'ai un DashWeb qui fonctionne mais qui me foire encore complètement les accents (et les cédilles, etc.). J'obtiens par exemple ceci (c'est en dashant ce forum-ci) :

Citation
J'en profite pour répéter une réponse déjà donnée: oui, les sections Bac3 et Prepa doivent toujours fournir leur propre implémentation


Pourtant, dans la réponse HTTP qui me donne les résultats sous forme de HTML, je mets bien le charset du code HTML en utf-8. De plus, à la fin du parsing d'une réponse HTTP, je force l'UTF-8 comme ça a été présenté en cours (débriefing de ThumbWeb) avec les deux lignes suivantes :

ByteBuffer bytesOfData = ByteBuffer.wrap(data.getBytes());
data = Charset.forName("UTF-8").decode(bytesOfData).toString();

/* data est le code HTML de la page récupéré en fin de parsing, avec ou sans chunk encoding */


Mais rien n'y fait, les accents ne sont toujours pas traités correctement. Est-ce quelqu'un peut éclairer ma lanterne ? Merci d'avance...


Jean-François (dit "Jef") Grailet

Ingénieur
  • Messages : 17
Message édité 3 fois, dernière édition par threepwood, 16 Mai 2013, 3:06     Lien vers ce message 16 Mai 2013, 2:17
C'est peu dire à dure comme ça. Mais si t'as bien fait le thumbweb, le problème doit être au niveau de ta réponse.
Si tu convertis ta réponse en byte il faut pas oublié de préciser le charset.
Avec clic droit info de la page, tu peux vérifier que l'encodage est bien défini.
Hors ligne Jef
Photo de Jef

2ème Ms.
  • Age : 25 ans
  • Messages : 555
  Lien vers ce message 16 Mai 2013, 15:39
C'est bon, j'ai trouvé une solution beaucoup plus simple : la méthode setInputEncoding() de JTidy (à condition de mettre en argument l'encoding renseigné dans la réponse HTTP). C'était écrit en commentaire dans le google doc sur la correction de ThumbWeb. Ca m'apprendra à survoler les slides...


Jean-François (dit "Jef") Grailet

Ingénieur
  • Messages : 17
  Lien vers ce message 16 Mai 2013, 17:30
Sylvain Martin a posté un test.

Mais je croyais que le setup devait être :
/setup?site = www.xyz.org%2fmain.php&var...2=xpath2[&: : :]]
alors queça à l aire d être:
/setup?site = www.xyz.org%2fmain.php&
varname1=xpath1&varname2=xpath2 (sans les crochets)

Quelqun'un pourrait confirmer que le 2e est le bon ?

Ingénieur
  • Messages : 17
Message édité 1 fois, dernière édition par threepwood, 16 Mai 2013, 17:32     Lien vers ce message 16 Mai 2013, 17:31
double post
Hors ligne Jef
Photo de Jef

2ème Ms.
  • Age : 25 ans
  • Messages : 555
Message édité 3 fois, dernière édition par Jef, 16 Mai 2013, 17:55     Lien vers ce message 16 Mai 2013, 17:50
C'est sans les crochets, les crochets sont là pour dire qu'on peut ne pas mettre ces variables (c'est comme dans la doc de certains langages, genre PHP).

Sinon y a une coquille pour son URL, c'est plutôt ça qu'il faut :

http://localhost:80xx/setup?site=www.run.montefiore.ulg.ac.be%2f%7emartin%2ftests%2ftoplevel.html&thumbimg=%2f%2fdiv[%40class=%27post%27]%2f%2fimg[%40class=%27bbc_img%27]/%40src&postpage=%2f%2fa[%40class=%27local%27]/%40href

(remplacer le xx par le numéro du groupe)

Aussi, je n'ai pas très bien compris ce qu'il faut faire avec http://ms803.montefiore.ulg.ac.be:8088/content.html. Je n'arrive pas à créer un socket pour cette adresse (timeout à tous les coups) donc quand je dash la front page je n'obtiens rien pour ce post...


Jean-François (dit "Jef") Grailet

Ingénieur
  • Messages : 17
Message édité 2 fois, dernière édition par threepwood, 16 Mai 2013, 18:14     Lien vers ce message 16 Mai 2013, 17:56
Bon ben j vais changer mon setup.
Il faut changer //a[@class='local']/@href" en //a[@class='arne']/@href"<br /><br />
Par contre moi, je les ai pas du tout dans le même ordre les images :?
Hors ligne Jef
Photo de Jef

2ème Ms.
  • Age : 25 ans
  • Messages : 555
  Lien vers ce message 16 Mai 2013, 18:25
Si l'ordre ne correspond pas à ce qu'il donne en bas de sa page, c'est normal : il a donné les XPath pour extraire les liens qui sont en haut de la même page et qui ne sont pas du tout dans le même ordre. Un petit coup d'oeil au code source et tu as normalement ceci :

http://www.wayofthepixel.net/i...40848#msg140848
http://www.wayofthepixel.net/i...40377#msg140377
http://www.wayofthepixel.net/i...38947#msg138947
...

Si ça correspond à ce que tu as, pas de soucis à se faire ;)


Jean-François (dit "Jef") Grailet

Ingénieur
  • Messages : 17
Message édité 1 fois, dernière édition par threepwood, 16 Mai 2013, 21:30     Lien vers ce message 16 Mai 2013, 21:29
Visiblement le content.html, c'est juste pour faire un teste sur un port non std. Mais il faut d'abord lancer son pseudo serveur parce que là il est down
sylvaindeloin
  Lien vers ce message 16 Mai 2013, 21:41
C'est sans les crochets, les crochets sont là pour dire qu'on peut ne pas mettre ces variables (c'est comme dans la doc de certains langages, genre PHP).
[quote]
affirmatif

[quote]Sinon y a une coquille pour son URL, c'est plutôt ça qu'il faut

parce qu'en l'occurence, ce n'est pas l'URL que j'ai donnée, mais bien le chemin (contenu de la requête GET) que le serveur reçoit.

Citation

Aussi, je n'ai pas très bien compris ce qu'il faut faire avec http://ms803.montefiore.ulg.ac.be:8088/content.html. Je n'arrive pas à créer un socket pour cette adresse (timeout à tous les coups) donc quand je dash la front page je n'obtiens rien pour ce post...


Attention, c'est http://ms803.montefiore.ulg.ac.be:8088/content.html , sans le "." au bout. C'est petit serveur expérimental et il est probable que l'un de vous doive le relancer à un moment ou un autre si on veut qu'il passe le week-end.

Il est effectivement là pour vérifier que les numéros de port sont supportés par votre programme.

Citation
Si l'ordre ne correspond pas à ce qu'il donne en bas de sa page, c'est normal :

En effet. Il est possible que j'aie du recourir à "sort -u" pour éviter certains doublons dans mes résultats (faute à une ligne de commande tordue en lieu et place de DashWeb pour faire mes tests :)
Répondre


.