IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

CURL Chercher et Clicker


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 91
    Par défaut CURL Chercher et Clicker
    Bonjour les gars ,

    je travailles sur un script qui fais des rendez vous auto ,

    j au réuissi a me connecter sur mon compte voila le code source

    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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <?php
     
        $ch = curl_init();
     
     
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_URL, 'https://example.com/login/login.php');
        curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
        curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
     
     
        $co = curl_exec($ch);
     
     
    $doc = new DOMDocument();
    libxml_use_internal_errors(true);
    $doc->loadHTML($co);
    # Parse the HTML
    # The @ before the method call suppresses any warnings that
    # loadHTML might throw because of invalid HTML in the page.
    $xpath = new DOMXPath($doc);
     
    $val1 = $xpath->query('//input[@name="_sid"]/@value')->item(0)->nodeValue;
     
     
    echo $val1;
     
     
          $field['process'] = 'login';
        $field['_sid'] = $val1;
        $field['email'] = 'email@email.com';
        $field['pwd'] = '123456';
     
        $datafield = http_build_query($field);
     
    	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    	curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
        curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $datafield);
    	curl_setopt($ch, CURLOPT_VERBOSE, true);
     
    	curl_exec($ch);
     
    	curl_setopt($ch, CURLOPT_URL, 'https://example.com/login/myapp.php?id=5454654');
    	$cur = curl_exec($ch);
     
    	echo $cur;
     
     
        curl_close($ch);
     
     
    ?>

    maintenant je dois Chercher sur le calendrier si il ya des dates en Bleu , donc il clique sur la date apres il clique sur le pop up pour confirmer .

    Voila le calendrier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <li class="overable initialised">2018-09-14 <a class="full" type="button">08<i>:30</i></a> <a class="full" type="button">08<i>:45</i></a> <a class="full" type="button">09<i>:00</i></a> <a class="full" type="button">09<i>:15</i></a> <a class="full" type="button">09<i>:30</i></a> <a class="full" type="button">09<i>:45</i></a> <a class="full" type="button">10<i>:00</i></a> <a class="full" type="button">10<i>:15</i></a> <a class="full" type="button">10<i>:30</i></a> <a class="full" type="button">10<i>:45</i></a> <a class="full" type="button">11<i>:00</i></a> <a class="full" type="button">11<i>:15</i></a> <a class="full" type="button">11<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5094&amp;skey=90f7a8877d1accee20e413dd209ea029&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+11%3A45&amp;issuer_view=tnTUN2fr&quot;)">11<i>:45</i></a> <a class="full" type="button">12<i>:00</i></a> <a class="full" type="button">12<i>:15</i></a> <a class="full" type="button">12<i>:30</i></a> <a class="full" type="button">13<i>:00</i></a> <a class="full" type="button">13<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5096&amp;skey=3ab72b245127e591ba1d0db8afd08fb1&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+13%3A30&amp;issuer_view=tnTUN2fr&quot;)">13<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5098&amp;skey=dcd416fa984f755cf9e55e503942220d&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+13%3A45&amp;issuer_view=tnTUN2fr&quot;)">13<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.51&amp;skey=8f41ad6700c58d4308fb836cc474c6f1&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+14%3A00&amp;issuer_view=tnTUN2fr&quot;)">14<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5102&amp;skey=9ff4540d8cdf1fc8f0b22e9786d059dd&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+14%3A15&amp;issuer_view=tnTUN2fr&quot;)">14<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5104&amp;skey=3e58332ea1a132cbe2e00a17017ba5d8&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+14%3A30&amp;issuer_view=tnTUN2fr&quot;)">14<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5106&amp;skey=c02c797479820694f40edd05dbc98a99&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+14%3A45&amp;issuer_view=tnTUN2fr&quot;)">14<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5108&amp;skey=d6d652cbcde371221550cd466d227259&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+15%3A00&amp;issuer_view=tnTUN2fr&quot;)">15<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.511&amp;skey=02670bb010e3f9503dcd3df6a5f914a6&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+15%3A15&amp;issuer_view=tnTUN2fr&quot;)">15<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5112&amp;skey=b9fd49cfe1dee68f84cad7b941358cb8&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+15%3A30&amp;issuer_view=tnTUN2fr&quot;)">15<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5114&amp;skey=c98b90cd33f13068217484b7af669a8e&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+15%3A45&amp;issuer_view=tnTUN2fr&quot;)">15<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5116&amp;skey=8c38d3c3353d46958f09734ed1306820&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+16%3A00&amp;issuer_view=tnTUN2fr&quot;)">16<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5118&amp;skey=3e6ecdf78f138930b7dd286cb852aade&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-14+16%3A15&amp;issuer_view=tnTUN2fr&quot;)">16<i>:15</i></a></li>
     
    <li class="overable initialised">2018-09-18 <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5155&amp;skey=c51070edf5580d9f244ee811ab3890d8&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+08%3A30&amp;issuer_view=tnTUN2fr&quot;)">08<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5157&amp;skey=4e6280594e0bbc1fd7ebd3846b00a402&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+08%3A45&amp;issuer_view=tnTUN2fr&quot;)">08<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5159&amp;skey=a3ac286f660419bde0d5497dff870d08&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+09%3A00&amp;issuer_view=tnTUN2fr&quot;)">09<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5161&amp;skey=3a98013195270239840c2b7c96d8bddb&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+09%3A15&amp;issuer_view=tnTUN2fr&quot;)">09<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5163&amp;skey=0a69e8bd3f14934ebdfad2a79cda6279&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+09%3A30&amp;issuer_view=tnTUN2fr&quot;)">09<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5165&amp;skey=28279f7d5eb41876ce5922614ece5102&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+09%3A45&amp;issuer_view=tnTUN2fr&quot;)">09<i>:45</i></a> <a class="full" type="button">10<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5167&amp;skey=582949472d848939abd3f5daf70a842d&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+10%3A15&amp;issuer_view=tnTUN2fr&quot;)">10<i>:15</i></a> <a class="full" type="button">10<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5169&amp;skey=1be74ff440de3dc2cf4f98e9efcb0ccb&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+10%3A45&amp;issuer_view=tnTUN2fr&quot;)">10<i>:45</i></a> <a class="full" type="button">11<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5171&amp;skey=b06010a23ef395fc075c82a993efe1b3&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+11%3A15&amp;issuer_view=tnTUN2fr&quot;)">11<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5177&amp;skey=0def1fdbf4418d89f83298cfc0ee9df6&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+11%3A30&amp;issuer_view=tnTUN2fr&quot;)">11<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5179&amp;skey=51fed4a1251f1303a42290a40ee8557e&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+11%3A45&amp;issuer_view=tnTUN2fr&quot;)">11<i>:45</i></a> <a class="full" type="button">12<i>:00</i></a> <a class="full" type="button">12<i>:15</i></a> <a class="full" type="button">12<i>:30</i></a> <a class="full" type="button">13<i>:00</i></a> <a class="full" type="button">13<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5261&amp;skey=38c8c666a7a99fb377f9a9900cf364ea&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+13%3A30&amp;issuer_view=tnTUN2fr&quot;)">13<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5264&amp;skey=a61e09630ac8d07c8a607247040dddbb&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+13%3A45&amp;issuer_view=tnTUN2fr&quot;)">13<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5266&amp;skey=2e5974636a956622307e66b8f6fec1d0&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+14%3A00&amp;issuer_view=tnTUN2fr&quot;)">14<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5268&amp;skey=54ff29d71e741144e1c0632356a9bd1c&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+14%3A15&amp;issuer_view=tnTUN2fr&quot;)">14<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.527&amp;skey=70063d5fa468aa1e9af47c746272df2c&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+14%3A30&amp;issuer_view=tnTUN2fr&quot;)">14<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5272&amp;skey=8c425a67c30e2957611ae4858c13ec0c&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+14%3A45&amp;issuer_view=tnTUN2fr&quot;)">14<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5274&amp;skey=f8b1cdf0380893303be540f59b3917d5&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+15%3A00&amp;issuer_view=tnTUN2fr&quot;)">15<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5277&amp;skey=9f7b53570b0f7a61dcbde5350367592e&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+15%3A15&amp;issuer_view=tnTUN2fr&quot;)">15<i>:15</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5278&amp;skey=18f3e5bd117c355f5d18048d88d439b1&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+15%3A30&amp;issuer_view=tnTUN2fr&quot;)">15<i>:30</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.528&amp;skey=5855f68730c4cbeb603bfe4598d3d770&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+15%3A45&amp;issuer_view=tnTUN2fr&quot;)">15<i>:45</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5282&amp;skey=374a164f1359d5f421f5811a9d7b9e54&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+16%3A00&amp;issuer_view=tnTUN2fr&quot;)">16<i>:00</i></a> <a class="dispo" type="button" href="javascript:void(0)" onclick="ajaxCall(&quot;ajax_form_status&quot;, &quot;https://example.com/login/action.php?timestamp=1536452615.5285&amp;skey=f7f7bfabe5c772e74dd94d69a9a9de6e&amp;process=multiconfirm&amp;what=take_appointment&amp;fg_id=5274725&amp;result=2018-09-18+16%3A15&amp;issuer_view=tnTUN2fr&quot;)">16<i>:15</i></a></li>
    Merci de m orienter les Gars

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Les notions de "bleu", de "click" , de "popup" n'existent pas avec Curl.
    La seule chose qu'il connait et sais faire ce sont des requêtes (http dans ton cas). Il faut donc que tu réalise manuellement les actions que tu souhaites et que tu regarde quelles sont les requêtes envoyée pour pouvoir les rejouer et les analyser.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 91
    Par défaut
    Merciii , vous voules dire que je dois prendre a chaque fois "bleu", de "click" , de "popup" comme variable et les rejouer commes des requetes HTTP , ??

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2015
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2015
    Messages : 75
    Par défaut
    Avec curl tu vas récupérer le code html de la page. Il faut que tu analyse ce code pour savoir à quoi correspond ce que tu nommes "bleu". Il y a de fortes chances que cela soit une class CSS qui définit la couleur de ta case bleue. Ensuite il faut simuler le click sur cette case bleue et déclencher les actions correspondantes.
    C'est loin d'être simple ce que tu cherches à faire surtout avec curl.
    Personnellement j'essayerais plutôt de faire ça en pilotant un navigateur en mode textuel avec un script https://fr.wikipedia.org/wiki/Liste_...teurs_textuels

  5. #5
    Expert confirmé Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 986
    Par défaut
    Bah déjà en regardant le code html on peut voir qu'il y a des balises a dont la classe est full et d'autres dont la classe est dispo, donc c'est pas nécessaire de s'embêter avec des couleurs, les créneaux disponibles sont clairement indiqués. À noter aussi, le fait que toutes les ancres munies de la classe dispo lorsque l'on clique dessus déclenchent la fonction javascript ajaxCall qui, comme son nom l'indique, procède à un appel ajax. Cette fonction prend deux paramètres. Le second est assez parlant vu qu'il s'agit d'une url vers un script PHP avec des paramètres GET, par exemple (en clair avec des indications probables):
    Code url : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    https://example.com/login/action.php?
    timestamp=1536452615.5106              & // 
    skey=c02c797479820694f40edd05dbc98a99  & // pour identifier la session
    process=multiconfirm                   & // manière dont la réservation est confirmée
    what=take_appointment                  & // type d'action qui doit probablement aiguiller vers le contrôleur adéquate
    fg_id=5274725                          & // identifiant de je ne sais quoi (fg)
    result=2018-09-14+14%3A45              & // date + créneau horaire
    issuer_view=tnTUN2fr

    Quant au premier paramètre qui est toujours ajax_form_status, vu son nom, il doit servir à transmettre à la fonction l'état du formulaire (peut être permet-il de savoir si on en est à choisir le créneau horaire ou à le confirmer.).

    Quoi qu'il en soit, tu dois trouver et analyser le code de la fonction javascript ajaxCall pour savoir exactement quels sont les appels à des scripts PHP (comme il y a confirmation, il y en a probablement au moins deux). Une fois que tu auras fait ce travail, il ne restera plus qu'à reproduire ces appels avec cURL dans le bon ordre.

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 91
    Par défaut
    Merci , beaucoup vous m avez bien détaillé je suis entrain d'essayer de récupérer ces variables a l aide de DOM HTML

    j ai rajouté ce code a mon script .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    include 'simple_html_dom.php';
     
    	$html = new simple_html_dom();
    	$html->load($cur);
     
    echo $val2 = $html->find('a[class=dispo],0');  // echo juste pour tester si j ai bien récupéré la variable
    pouvez vous m aider a récupérer ces variables ?


    Merciii

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP 5.4] Chercher la version fr d'un site avec cURL
    Par yule dans le forum Langage
    Réponses: 0
    Dernier message: 09/08/2014, 03h17
  2. Chercher le package contenant la librairie...
    Par GLDavid dans le forum Debian
    Réponses: 6
    Dernier message: 27/07/2004, 17h37
  3. chercher des données dans sa propre requete...
    Par shadowbob dans le forum Requêtes
    Réponses: 4
    Dernier message: 27/06/2004, 17h13
  4. chercher l'index maxi d'une table
    Par picoti2 dans le forum Bases de données
    Réponses: 13
    Dernier message: 22/03/2004, 08h07
  5. [VB6]Chercher l'adresse IP
    Par Shea13 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 19/02/2004, 17h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo