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 :

Echec récupération liens html. Squid erreur


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Echec récupération liens html. Squid erreur
    Bonjour,

    j'essaye d'utiliser un script hébergé chez Free mais une fonction ne semble pas fonctionner :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    file_get_contents()
    Si j'affiche ce que retourne la fonction
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    file_get_contents('http://www.developpez.net');

    j'obtiens le message d'erreur :
    ERREUR
    L'URL demandée n'a pu être chargée

    En essayant de charger l'URL : http://www.developpez.net

    L'erreur suivante a été rencontrée :

    * Accès interdit.

    La configuration du contrôle d'accès interdit à votre requête d'être acceptée à cette heure-ci. Veuillez contacter votre prestataire de service si vous pensez que ceci n'a pas lieu d'être.

    Generated Tue, 07 Dec 2010 09:22:25 GMT by pageperso.priv.free.fr (squid/3.0.STABLE21)
    Savez vous pourquoi et comment y remédier ?
    Je crois qu'il faut orienter la recherche du côté de Squid, mais je n'y connais rien...

    Merci

  2. #2
    Membre confirmé Avatar de rikemSen
    Homme Profil pro
    Analyste Développeur Web - Fizzup.com
    Inscrit en
    Décembre 2007
    Messages
    387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste Développeur Web - Fizzup.com
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 387
    Points : 540
    Points
    540
    Par défaut
    Essaie avec un site n'est pas spécialisé dans le développement... Il me semble qu'on peut empêcher (grâce à je ne sais quelle configuration) de se faire "get_content" sur son site.

    En gros, ce n'est pas forcément chez Free que ça merde mais le site distant qui bloque le
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
     file_get_contents()

    Cordialement, Guillaume.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Ah d'accord. Dans ce cas, il y a t-il un moyen de "parcourir" le site distant et de récupérer les liens html sans passer par le file_get_contents ?

  4. #4
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Bonjour,

    ce lien pourrait peut être t'aider :

    http://php.developpez.com/faq/index....l_lire_fichier

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Je viens d'essayer la solution que tu proposes,

    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
     
    $url="http://www.test.com/test.html";
    $ch = curl_init($url);
    $fp = fopen("temp.html", "w");
     
    curl_setopt($ch, CURLOPT_FILE, $fp);
    curl_setopt($ch, CURLOPT_NOBODY, FALSE); 
     
    curl_exec($ch);
    curl_close($ch);
    fclose($fp);
     
    //DOM treatment
    $domDocument = new DOMDocument();
    if($domDocument->loadHTMLFile("temp.html"))
    {
    	$itemnodes = $domDocument->getElementsByTagName("a");
    	echo("itemnodes = $itemnodes->item(0)");
    	$nodes = $itemnodes->item(0)->getElementsByTagName( "a" );
    	for ( $i = 0; $i < $nodes->length; $i++ ) 
    	{
    		print "nodename=".$nodes->item( $i )->nodeName;
    		print "\t";
    		print "nodevalue : ".$nodes->item( $i )->nodeValue;
    		print "\r\n";
    	}
    }
    Voici ce que mon browser affiche quand j'ouvre temp.html (le lien du site dans l'image est erroné mais c'est normal, j'ai fait un raccourci un peu rapide en voulant écrire http://www.test.com/test.html) :


    Au final, j'ai l'impression que le problème est le même et qu'il s'agit d'une configuration au niveau du site http://www.test.com/test.html qui m'empêche de faire ça.

Discussions similaires

  1. Récupération valeurs de champ et utilisation de celles-ci dans un lien HTML
    Par motorenshi dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/05/2008, 14h43
  2. Réponses: 4
    Dernier message: 08/04/2008, 18h11
  3. liens html
    Par gregal dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 08/11/2004, 09h53
  4. [web] lien HTML à partir de perl
    Par lilou0210 dans le forum Web
    Réponses: 4
    Dernier message: 05/11/2004, 00h16
  5. équivalent lien HTML
    Par Dra_Gun dans le forum Flash
    Réponses: 3
    Dernier message: 15/12/2003, 16h25

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