Lagre innhold i <div> til database

Ok, jeg holder på å rive ut håret (det lille jeg har igjen)...:eek:

Det jeg vil prøve, er å hente et Google-søk (blablabla - Google-søk) inn på en side på websiden min. Enten som "include" eller "file_get_contents" (eventuelt andre måter).

Deretter vil jeg ta hver av de 10 resultatene og legge dem i en database hver for seg. En litt komplisert måte for scraping. Så hvordan "ekstrakterer" jeg de 10 liste-elementene fra Google-søket? Jeg har prøvd alt mulig etter fem dager på leting (ja, til og med SimpleHtmlDOM), uten hell. Husk...jeg er blond på dette.

En bukett med klemmer til den som hjelper meg med denne :eek:

PS: Ja, jeg vet at dette er imot Google's TOS :)
 

adeneo

Medlem
Nei. nei, nei! dette er ikke tillatt og må forbys ved Norsk lov snarest.
Hvor er Datalagringsdirektivet når man trenger det, eller en eller annen dustete lov vi kan henge dette på.

På den andre siden så går det sikkert an å gjøre:

PHP:
<?php
    $searchterm="blablabla";

    $db = mysqli_connect($host,$user,$password,$database);
    $table = 'google';
    $result="";
    mysqli_set_charset($db, "utf8");
    if( mysqli_connect_errno()) { die(mysqli_connect_error()); }
    
    $stmt = $db->prepare("INSERT INTO $table (result) values (?)");
    $stmt->bind_param('s', $result);

    $url = "http://www.google.no/search?q=".$searchterm;
    $site = file_get_contents($url);  //hent siden
    preg_match_all( '#<li class="g">(.*?)</li>#si', $site, $content); //del opp resultatene
    
    foreach($content[0] as $GooResult) {
        if (!stripos($GooResult, 'Bilder av')) { //veldig enkel eliminering av "bilder av" resultatet, kan fjerne andre søk og bør forbedres
            echo $GooResult;  //viser ett og ett resultat
            echo "\n\n";   //legg til et par newlines mellom hvert resultat
            
            $result=$GooResult;
            $stmt->execute();
        }
    }
    
    $stmt->close();
    mysqli_close($db);        
?>
 
Herregud! Nå er jeg VELDIG lykkelig! Du har reddet meg fra mange søvnløse netter, Adeneo :)

Jeg gruer meg alltid for å spørre (plage) folk på forum. Men tusen, tusen, tusen hjertelig takk!
 
Topp