JOHNYS22031990 Δημοσ. 28 Μαΐου 2014 Δημοσ. 28 Μαΐου 2014 εχω φτιαξει αυτο to crawler αλλα δεν παιρναει αθατα που θελω στη βαση μπορει καποιος να βοηθησει αθτοσ ειναι ο κωδικασ <?php header('Content-Type: text/html; charset=utf-8'); include_once('simple_html_dom.php'); $firsttime = time(); $con=mysqli_connect("localhost","root",""); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } // Create database //$sql="CREATE DATABASE crawler"; //if (mysqli_query($con,$sql)) { // echo "Database crawler created successfully"; //} else { // echo "Error creating database: " . mysqli_error($con); //} $con=mysqli_connect("localhost","root","","crawler"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } // Create table $sql="CREATE TABLE crawl(PAGE VARCHAR(1000),LINKS VARCHAR(1000),TITLE CHAR(100),BYTES INT,NLINKS INT)"; // Execute query if (mysqli_query($con,$sql)) { echo "Table crawl created successfully"; } else { echo "Error creating table: " . mysqli_error($con); } // Create DOM from URL $url=$_POST['url']; $html = file_get_html($url); // Find all links $allURLs = array(); $file = array(); $p=0; $b=0; $image = array (); function getTitle($Url){ $str = @file_get_contents($Url); if(strlen($str)>0){ preg_match("/\<title\>(.*)\<\/title\>/",$str,$title); return $title[1]; } } function curl_get_file_size( $url ) { // Assume failure. $result = -1; $curl = curl_init( $url ); // Issue a HEAD request and follow any redirects. curl_setopt( $curl, CURLOPT_NOBODY, true ); curl_setopt( $curl, CURLOPT_HEADER, true ); curl_setopt( $curl, CURLOPT_RETURNTRANSFER, true ); curl_setopt( $curl, CURLOPT_FOLLOWLOCATION, true ); //curl_setopt( $curl, CURLOPT_USERAGENT, get_user_agent_string() ); $data = curl_exec( $curl ); curl_close( $curl ); if( $data ) { $content_length = "unknown"; $status = "unknown"; if( preg_match( "/^HTTP\/1\.[01] (\d\d\d)/", $data, $matches ) ) { $status = (int)$matches[1]; } if( preg_match( "/Content-Length: (\d+)/", $data, $matches ) ) { $content_length = (int)$matches[1]; } // http://en.wikipedia.org/wiki/List_of_HTTP_status_codes if( $status == 200 || ($status > 300 || $status <= 308) ) { $result = $content_length; } } return $result; } foreach($html->find('a') as $element){ $allURLs[] = $element->href; $p=$p+1; } for($i=0; $i<=$p; $i++){ $u=getTitle($allURLs[$i]); $a=$allURLs[$i]; $file[$i]= curl_get_file_size( $a); $size=$file[$i]/1000; $con=mysqli_connect("localhost","root",""); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $db_selected = mysqli_select_db($con,'crawler'); if (!$db_selected) { die ('Can\'t use crawler : ' . mysql_error()); $vURLSQL = " INSERT INTO `crawl` ( `PAGE` , `LINKS` , `TITLE` , `BYTES` , `NLINKS` ) VALUES ('$url' , '$a', '$u', '$size', '$p' )"; mysql_query($vURLSQL); mysql_close(); } echo "$u[$i]<br>"; echo "Page requested: ".$allURLs[$i]."<br>"; echo "Referer-page: ".$url."<br>"; echo "KB:".$size."<br>"; } foreach($html->find('img') as $element){ $image[]=$element->src ; $b=$b+1; } for($i=0; $i<=$b; $i++){ $u=getTitle($image[$i]); $t=$image[i]; $file= curl_get_file_size( $image[$i]); $size=$file/1000; $con=mysqli_connect("localhost","root",""); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $db_selected = mysqli_select_db($con,'crawler'); if (!$db_selected) { die ('Can\'t use crawler : ' . mysql_error()); $vURLSQL = " INSERT INTO `crawl` ( `PAGE` , `LINKS` , `TITLE` , `BYTES` , `NLINKS` ) VALUES ('$url' , '$t', '$u', '$size', '$b' )"; mysql_query($vURLSQL); mysql_close(); } echo "$u[$i]<br>"; echo "Page requested: ".$image[$i]."<br>"; echo "Referer-page: ".$url."<br>"; echo "KB:".$size."<br>"; } $lasttime=time(); $time=$lasttime-$firsttime; echo $time; ?> και αν μπορειτε πως θα βρω το χρονο που χρειαζετε για να αποθηκευτουν στην βαση τα λινκσ
defacer Δημοσ. 28 Μαΐου 2014 Δημοσ. 28 Μαΐου 2014 Στις 28/5/2014 στις 10:41 ΠΜ, JOHNYS22031990 είπε εχω φτιαξει αυτο to crawler Αν το είχες φτιάξει εσύ δε θα ήσουν τώρα σ' αυτή τη θέση. Anyway καλή τύχη γιατί αυτό που έχεις στα χέρια σου είναι τόσο λάθος που δε σώζεται με τίποτα, και δε νομίζω κανείς να μπει στον κόπο ασχοληθεί εφόσον εσύ ο ίδιος το αντιμετωπίζεις καθαρά σα φύγε κακό απ τα μάτια μου.
JOHNYS22031990 Δημοσ. 28 Μαΐου 2014 Μέλος Δημοσ. 28 Μαΐου 2014 εγω το εχω φτιαξει και παιζει μια χαρα απλα δν τα αποθηκευει στη βαση παρολο που εχω βαλει το query Στις 28/5/2014 στις 12:41 ΜΜ, JOHNYS22031990 είπε εγω το εχω φτιαξει και παιζει μια χαρα απλα δν τα αποθηκευει στη βαση παρολο που εχω βαλει το query για αυτο που το θελω μια χαρα ειναι απλα δν μ παιρναει τα στοιχεια στη βαση
Timonkaipumpa Δημοσ. 29 Μαΐου 2014 Δημοσ. 29 Μαΐου 2014 Για αυτό που το θέλεις είναι απλά να περάσεις το μάθημα έχοντα κώδικα που είτε σου έδωσε άλλος είτε ο καθηγητής σαν template. Διάβασε να περάσεις το μάθημα με την αξία σου.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα