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 :

crawling + erreur 302


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 146
    Par défaut crawling + erreur 302
    Bonjour ,
    je fais du crawling sur les résultats Google pour récupérer les positions de certains site , j'ai fais quelques test en local cela marche très bien , je l'ai uploadé sur OVH et la je crois que Google a repéré que c’était un script.. du coup j'arrive plus a exécuter mon script
    http://www.escienweb.com/admin/script_auto.php
    Je sais plus quoi faire :/

  2. #2
    Membre émérite Avatar de vorace
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2010
    Messages : 573
    Par défaut
    en effet, c'est google qui bloque :
    Vous pouvez être invité à saisir les caractères de l'image CAPTCHA si vous utilisez des termes avancés auxquels les robots ont recours ou si vous envoyez des requêtes très rapidement.
    tu peux temporiser tes requêtes avec un délai...
    tu peux poster ton code que je testes chez mon hébergeur ?
    je sais que ça n'a rien à voir avec l’hébergeur mais avec le code on peut tester plusieurs solutions...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 146
    Par défaut
    je te poste sa demain , j'ai laisser les fichier sur le pc du boulot
    mais j'ai fais des sleep .... :/

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 146
    Par défaut
    j'ai réduit le code pour que tu vois ou sa bloque
    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
    <?php
     
    require_once('simple_html_dom.php');
    require_once('connexion.php');
     
    class Report{
     
    	public function strip_tags_content($text, $tags = '', $invert = FALSE) {
    		$text = str_ireplace('<br>', '', $text);
    		preg_match_all('/<(.+?)[\s]*\/?[\s]*>/si#<img(.*?)>#s', trim($tags), $tags);
    		$tags = array_unique($tags[1]);
    		if(is_array($tags) AND count($tags) > 0) {
    			if($invert == FALSE) {
    				return preg_replace('@<(?!(?:'. implode('|', $tags) .')\b)(\w+)\b.*?>.*?</\1>@si', '', $text);
    			} else {
    				return preg_replace('@<('. implode('|', $tags) .')\b.*?>.*?</\1>@si', '', $text);
    			}
     
    		} elseif($invert == FALSE) {
    			return preg_replace('@<(\w+)\b.*?>.*?</\1>@si', '', $text);
    		}
    		return $text;
    	}
     
    	public function file_get_contents_curl($url) {
    		$ch = curl_init();
    		curl_setopt($ch, CURLOPT_USERAGENT,	$_SERVER['HTTP_USER_AGENT']);
    		curl_setopt($ch, CURLOPT_HEADER, 0);
    		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    		curl_setopt($ch, CURLOPT_URL, $url);
    		$data = curl_exec($ch);
    		curl_close($ch);
    		return $data;
    	}
     
    	public function creat_report($moteur){
    		$data = Report::file_get_contents_curl("http://www.google.fr/search?hl=es&lr=lang_en&q=rimbaud ");
    		//$data = Report::file_get_contents_curl("http://www.google.fr/search?hl=fr&q=".urlencode($key['kw'])."&start=".$i."");
    		//$data = Report::file_get_contents_curl("http://www.google.fr/#hl=fr&xhr=t&q=youtube&cp=1&pf=p&sclient=psy&site=&source=hp&aq=0&aqi=&aql=&oq=y&pbx=1&bav=on.2,or.r_gc.r_pw.&fp=fa24f318d197c09d&biw=1600&bih=703");
    		$html = str_get_html($data);
    		echo $data;
    	}
    }
    ?>
    Juste d'appeler la méthode creat_report sa me générer une erreur 302 du fait que Google a repérer que c'est un script automatique

  5. #5
    Membre émérite Avatar de vorace
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2010
    Messages : 573
    Par défaut
    ben écoute je l'ai testé chez mon hébergeur, j'ai même bouclé 50 et 100 fois sur la méthode creat_report() et j'ai pas eu de problème, j'ai à chaque fois la page qui s'affiche autant de fois à la suite...

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    tu sais que la position dans Google dépend de ta localisation et de tes recherche précédentes (et de plein d'autres choses), c'est donc normale qu'il y'ai un décalage entre les résultats de ton client et l'api de Google ...
    Tes résultats sont donc faussés.

Discussions similaires

  1. Service de géocodage : Erreur 302
    Par vremac dans le forum IGN API Géoportail
    Réponses: 2
    Dernier message: 18/03/2011, 10h36
  2. Moteur de recherche - erreur 302
    Par bchartier dans le forum IGN API Géoportail
    Réponses: 9
    Dernier message: 24/02/2011, 21h05
  3. Cross-Domain sur un sous-domaine (erreur 302)
    Par Murmured dans le forum jQuery
    Réponses: 2
    Dernier message: 07/02/2011, 23h33
  4. Téléchargement d'un fichier avec IdHTTP (erreur 302)
    Par Webco dans le forum C++Builder
    Réponses: 3
    Dernier message: 07/04/2009, 11h14

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