Salut ,
je veut récupérer une page web exécuter son javascript et la parser .
Je ne sais pas comment exécuter le javascript mais apparemment il y a un problème .Qaund je récupère la page , je l'enregistre page.html et je l'ouvre avec firefox le javascript ne marche pas il y a un problème de commentaire .Donc je pense que avec java j'aurais le même problème .

Je sais pas si c'est claire , je pense pas hhh bref je vous montre le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import java.io.*;
import java.net.*;
 
public class MyProg {
	public static String post(String adresse, String donnees){
        String a="";
        int idex=0;
         OutputStreamWriter writer = null;
         BufferedReader reader = null;
           try {
               a = "";
              //création de la connection
              URL url = new URL(adresse);
              URLConnection conn = url.openConnection();
              conn.setDoOutput(true);
             // System.out.println(conn.getURL());
              //envoi de la requête
              writer = new OutputStreamWriter(conn.getOutputStream());
              writer.write(donnees);
              writer.flush();
              //lecture de la réponse
              reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
              String ligne;
              while ((ligne = reader.readLine()) != null) {
                  a += ligne;
              }
 
           }catch (Exception e) {
              e.printStackTrace();
           }finally{
              try{writer.close();}catch(Exception e){}
              try{reader.close();}catch(Exception e){}
           }
           return a;
    }
 
	public static void main(String args[])
	{
 
		String adr="http://wftc2.e-travel.com/plnext/tunisair/Override.action";
        String don="&B_LOCATION_1=TUN&E_LOCATION_1=ALG&TRIP_TYPE=R&B_Day=08&B_Month=04&B_YEAR=2011&B_TIME=24&dcd1=9-12-2002&E_DAY=17&E_MONTH=04&E_YEAR=2011&E_TIME=24&dcd2=9-12-2002&EMBEDDED_TRANSACTION=FlexPricerAvailability&LANGUAGE=FR&SITE=BASXBASX&TRIP_FLOW=&B_ANY_TIME_1=TRUE&B_DATE_1=201104080000&B_DATE_2=201104170000&B_ANY_TIME_2=TRUE&CORPORATE_CODE=&CORPORATE_TYPE=&AIRLINE_1_1=&AIRLINE_2_1=&EXTERNAL_ID=FLEX-IBE&SESSION_ID=&SO_GL=%3C%3Fxml+version%3D%221.0%22+encoding%3D%22iso-8859-1%22%3F%3E%3CSO_GL%3E%3CGLOBAL_LIST+mode%3D%22complete%22%3E%3CNAME%3ESO_SINGLE_MULTIPLE_COMMAND_BUILDER%3C%2FNAME%3E%3CLIST_ELEMENT%3E%3CCODE%3E1%3C%2FCODE%3E%3CLIST_VALUE%3E%3C![CDATA[FT+*CC000129]]%3E%3C%2FLIST_VALUE%3E%3CLIST_VALUE%3ES%3C%2FLIST_VALUE%3E%3C%2FLIST_ELEMENT%3E%3CLIST_ELEMENT%3E%3CCODE%3E1%3C%2FCODE%3E%3CLIST_VALUE%3E%3C![CDATA[RM+MAIL+ES+%3CUSERMAIL_COMPLETE%3E]]%3E%3C%2FLIST_VALUE%3E%3CLIST_VALUE%3ES%3C%2FLIST_VALUE%3E%3C%2FLIST_ELEMENT%3E%3C%2FGLOBAL_LIST%3E%3C%2FSO_GL%3E&SEARCH_BY=&DESTINATION_PAGE=http%3A%2F%2Fwftc2.e-travel.com%2Fplnext%2Ftunisair%2FOverride.action&ADTPAX=1&YTHPAX=0&CHDPAX=0&InfantPAX=0&PRICING_TYPE=O&DISPLAY_TYPE=1&DATE_RANGE_VALUE_1=4&DATE_RANGE_VALUE_2=4&COMMERCIAL_FARE_FAMILY_1=WWCFF&DATE_RANGE_QUALIFIER_1=C&DATE_RANGE_QUALIFIER_2=C&SO_SITE_FD_DISPLAY_MODE=0&SO_SITE_ALLOW_SPECIAL_MEAL=FALSE&SO_SITE_AVAIL_SERVICE_FEE=TRUE&SO_SITE_CURRENCY_FORMAT_JAVA=0.00&DIRECT_NON_STOP=TRUE&SO_SITE_TRANSFER_LINK=http%3A%2F%2Fwww.tunisair.com%2Fsite%2Fpublish%2Fmodule%2Fframe_PaySpsPoste.asp&SO_SITE_OFFICE_ID=TUNTU08BB&SO_SITE_MOP_EXT=FALSE&SO_SITE_MOP_CALL_ME=TRUE&SO_SITE_DATA_TRANSFER=TRUE&SO_SITE_BOOL_ISSUE_ETKT=FALSE&SO_SITE_USER_CURRENCY_CODE=TND&TRAVELLER_TYPE_1=ADT&kjh=Envoyer";
		String result=post(adr,don);
        System.out.println(result);
 
 
	}
}
vous pouvez utiliser le lien pour voir la page , elle marche en GET et en POST :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
http://wftc2.e-travel.com/plnext/tunisair/Override.action?B_LOCATION_1=TUN&E_LOCATION_1=ALG&TRIP_TYPE=R&B_Day=08&B_Month=04&B_YEAR=2011&B_TIME=24&dcd1=9-12-2002&E_DAY=17&E_MONTH=04&E_YEAR=2011&E_TIME=24&dcd2=9-12-2002&EMBEDDED_TRANSACTION=FlexPricerAvailability&LANGUAGE=FR&SITE=BASXBASX&TRIP_FLOW=&B_ANY_TIME_1=TRUE&B_DATE_1=201104080000&B_DATE_2=201104170000&B_ANY_TIME_2=TRUE&CORPORATE_CODE=&CORPORATE_TYPE=&AIRLINE_1_1=&AIRLINE_2_1=&EXTERNAL_ID=FLEX-IBE&SESSION_ID=&SO_GL=%3C%3Fxml+version%3D%221.0%22+encoding%3D%22iso-8859-1%22%3F%3E%3CSO_GL%3E%3CGLOBAL_LIST+mode%3D%22complete%22%3E%3CNAME%3ESO_SINGLE_MULTIPLE_COMMAND_BUILDER%3C%2FNAME%3E%3CLIST_ELEMENT%3E%3CCODE%3E1%3C%2FCODE%3E%3CLIST_VALUE%3E%3C![CDATA[FT+*CC000129]]%3E%3C%2FLIST_VALUE%3E%3CLIST_VALUE%3ES%3C%2FLIST_VALUE%3E%3C%2FLIST_ELEMENT%3E%3CLIST_ELEMENT%3E%3CCODE%3E1%3C%2FCODE%3E%3CLIST_VALUE%3E%3C![CDATA[RM+MAIL+ES+%3CUSERMAIL_COMPLETE%3E]]%3E%3C%2FLIST_VALUE%3E%3CLIST_VALUE%3ES%3C%2FLIST_VALUE%3E%3C%2FLIST_ELEMENT%3E%3C%2FGLOBAL_LIST%3E%3C%2FSO_GL%3E&SEARCH_BY=&DESTINATION_PAGE=http%3A%2F%2Fwftc2.e-travel.com%2Fplnext%2Ftunisair%2FOverride.action&ADTPAX=1&YTHPAX=0&CHDPAX=0&InfantPAX=0&PRICING_TYPE=O&DISPLAY_TYPE=1&DATE_RANGE_VALUE_1=4&DATE_RANGE_VALUE_2=4&COMMERCIAL_FARE_FAMILY_1=WWCFF&DATE_RANGE_QUALIFIER_1=C&DATE_RANGE_QUALIFIER_2=C&SO_SITE_FD_DISPLAY_MODE=0&SO_SITE_ALLOW_SPECIAL_MEAL=FALSE&SO_SITE_AVAIL_SERVICE_FEE=TRUE&SO_SITE_CURRENCY_FORMAT_JAVA=0.00&DIRECT_NON_STOP=TRUE&SO_SITE_TRANSFER_LINK=http%3A%2F%2Fwww.tunisair.com%2Fsite%2Fpublish%2Fmodule%2Fframe_PaySpsPoste.asp&SO_SITE_OFFICE_ID=TUNTU08BB&SO_SITE_MOP_EXT=FALSE&SO_SITE_MOP_CALL_ME=TRUE&SO_SITE_DATA_TRANSFER=TRUE&SO_SITE_BOOL_ISSUE_ETKT=FALSE&SO_SITE_USER_CURRENCY_CODE=TND&TRAVELLER_TYPE_1=ADT&kjh=Envoyer
moi mon objectif c'est récupérer les dates et les prix , mais il sont dans une variable javascript générer par JSON , donc je doit exécuter le javascript puis parser la page .

Merci beaucoup d'avance