Bonjour tous le monde, j'essaye d'extraire une partie d'une recherche Google, dans mon cas "qui a tué kennedy ?"
https://www.google.fr/search?q=qui+a+tu%C3%A9+kennedy Qui renvoie la réponse à la question en haut de page.
J'essaye de récupérer directement la réponse :
"Le 22 novembre 1963, John Fitzgerald Kennedy, président des Etats-Unis, est assassiné en plein centre de Dallas, au Texas. Depuis cinquante ans, la version officielle reste la même, JFK aurait été tué par Lee Harvey Oswald, un jeune homme de vingt-quatre ans, qui a éte ensuite victime d'un accès de folie de Jack Ruby."
J'ai télécharger la page et voici le morceau de code qui m'intéresse :
( [intéréssant] , (pas intéressant) )
( <div class="_o0d"> ) [ <div class="_sPg">Le 22 novembre 1963, John Fitzgerald <b>Kennedy</b>, président des Etats-Unis, est assassiné en plein centre de Dallas, au Texas. Depuis cinquante ans, la version officielle reste la même, <b>JFK</b> aurait été <b>tué</b> par Lee Harvey Oswald, un jeune homme de vingt-quatre ans, <b>qui</b> a éte ensuite victime d'un accès de folie de Jack Ruby.</div> ] ( </div><div class="_dSg"><h3 class="r"><a href="/url?q=http://www.inexplique-endebat.com/2015/06/jfk-autopsie-d-un-complot.html&sa=U&ved=0ahUKE ... )
J'ai mis entre crochet la partie que je veut récupérer et entre parenthèse la partie qui ne m'intéresse pas.
Mon script récupère la page de la recherche et est censé stocker dans ma variable $trouve tout ce qui se trouve entre <div class="_sPg"> et </div>.
1 2 3 4 5 6 7 8 9 10 11
| $inputRecherche = "qui a tué kennedy";
$adresse = "https://www.google.fr/search?q=".$inputRecherche ;
$adresse = str_replace(" ", "+", $adresse);
echo "Adresse : ".$adresse."<br>";
$page = file_get_contents($adresse);
#echo $page; #La page de base
$aRechercher = '#<div class="_sPg">(.*)</div>#'; #nouveau
preg_match_all($aRechercher, $page, $trouve);
print_r($trouve); #Tableau en entier |
Le problème c'est qu'il ne s'arrête pas à </div> mais va au delà alors qu'il ne le devrai pas.
Voici le résultat renvoyer :
(j'ai surligné les 2 parties)
Le 22 novembre 1963, John Fitzgerald <b>Kennedy</b>, président des Etats-Unis, est assassiné en plein centre de Dallas, au Texas. Depuis cinquante ans, la version officielle reste la même, <b>JFK</b> aurait été <b>tué</b> par Lee Harvey Oswald, un jeune homme de vingt-quatre ans, <b>qui</b> a éte ensuite victime d'un accès de folie de Jack Ruby.</div></div><div class="_dSg"><h3 class="r"><a href="/url?q=http://www.inexplique-endebat.com/2015/06/jfk-autopsie-d-un-complot.html&sa=U&ved=0ahUKEwiEytG5nIjOAhXBVxQKHZEVDjQQFggYMAE&usg=AFQjCNHC1nSNdsgup8iHMTI7X5KF6q9Kug"><b>JFK</b>, AUTOPSIE D'UN COMPLOT - INEXPLIQUÉ EN DÉBAT</a></h3><div class="s"><div class="kv" style="margin-bottom:2px"><cite>www.inexplique-endebat.com/2015/06/<b>jfk</b>-autopsie-d-un-complot.html</cite></div><span class="st"></span><br></div></div><div class="_o0d"></div></div></div><div class="g"></div><div class="g"><h3 class="r"><a href="/url?q=http://www.lepoint.fr/monde/qui-a-tue-john-fitzgerald-kennedy-20-11-2013-1758870_24.php&sa=U&ved=0ahUKEwiEytG5nIjOAhXBVxQKHZEVDjQQFggcMAI&usg=AFQjCNFllLBcNawiCeqmoDx-PG18DLh3xw"><b>Qui a tué</b> John Fitzgerald <b>Kennedy</b> ? - Le Point</a></h3><div class="s"><div class="kv" style="margin-bottom:2px"><cite>www.lepoint.fr/.../<b>qui-a-tue</b>-john-fitzgerald-<b>kennedy</b>-20-11-2013-1758870_ 24.php</cite><div class="_nBb"><div style="display:inline" onclick="google.sham(this);" aria-expanded="false" aria-haspopup="true" tabindex="0" data-ved="0ahUKEwiEytG5nIjOAhXBVxQKHZEVDjQQ7B0IHTAC"><span class="_O0"></span></div><div style="display:none" class="am-dropdown-menu" role="menu" tabindex="-1"><ul><li class="_Ykb"><a class="_Zkb" href="/url?q=http://webcache.googleusercontent.com/search%3Fq%3Dcache:WE3GM1B3sGUJ:http://www.lepoint.fr/monde/qui-a-tue-john-fitzgerald-kennedy-20-11-2013-1758870_24.php%252Bqui%2Ba%2Btu%25C3%25A9%2Bkennedy%26hl%3Dfr%26ct%3Dclnk&sa=U&ved=0ahUKEwiEytG5nIjOAhXBVxQKHZEVDjQQIAgfMAI&usg=AFQjCNFcaovxmbUVyqS_bkBMVYi49m9jDA">En cache</a></li><li class="_Ykb"><a class="_Zkb" href="/search?ie=UTF-8&q=related:www.lepoint.fr/monde/qui-a-tue-john-fitzgerald-kennedy-20-11-2013-1758870_24.php+qui+a+tu%C3%A9+kennedy&tbo=1&sa=X&ved=0ahUKEwiEytG5nIjOAhXBVxQKHZEVDjQQHwggMAI">Pages similaires</a></li></ul></div></div></div><span class="st">20 nov. 2013 <b>...
Merci de votre aide et bonne journée
Partager