
Ενδεχομένως χρειαζόταν ποτέ να πάρει το περιεχόμενο, ή μέρος αυτού, έναν ιστό, Αν θέλετε να συλλέξετε δεδομένα ή για οποιοδήποτε είδος της παρακολούθηση για κάτι, ή απλά επειδή θέλετε να δημιουργήσετε το δικό σας Ερπυστριοφόροι, ποιες ιστοσελίδες σάρωση, όπως και η bots Google, Bing, Yahoo,…
Υπάρχει ένα πολύ χρήσιμο βιβλιοθήκη που μας βοηθάει να επιτελέσει το έργο σε PHP. Το όνομά του είναι Μπούκλα και σας επιτρέπει να συνδεθείτε με άλλα περιβάλλοντα που χρησιμοποιούν διαφορετικά πρωτόκολλα. Χρησιμοποιώντας μπούκλα, θα δείτε πώς μπορείτε να πάρετε το περιεχόμενο μιας ιστοσελίδας σε PHP.
Πώς να πάρετε το περιεχόμενο μιας ιστοσελίδας χρησιμοποιώντας τη βιβλιοθήκη PHP μπούκλα
Χρήση της βιβλιοθήκης μπούκλα, Μπορείτε να πάρετε το περιεχόμενο Πλήρης ιστοσελίδα. Μόλις έχετε το περιεχόμενό σας, Μπορείτε να εκτελέσετε μια αναζήτηση σε αυτό. Ως παράδειγμα, στον κωδικό στο PHP οτι σας έχουμε δείξει εδώ, Έχουμε μια συνάρτηση που παίρνει το περιεχόμενο ενός δικτυακού τόπου, του οποίου η διεύθυνση URL είναι πέρασε ως παράμετρος μια, και επιστρέφει μια συμβολοσειρά που αντιπροσωπεύει τη σελίδα web.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | function getContenidoWeb($url){ $ch = curl_init(); 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; } //Ejemplo de uso $cadena = getContenidoWeb('http://www.web.com'); |
Μόλις έχετε το περιεχόμενο web σε ένα string, Μια πιθανότητα είναι parsearlo μετατρέποντάς το σε ένα αντικείμενο XML o DOM, τόσο πολύ ευκολότερο χειρισμό.
Ένα παράδειγμα αυτού χρησιμοποιώντας την κλάση DOMDocument. Χρησιμοποιώντας αυτή την κατηγορία μπορείτε να αναλύσει τη συμβολοσειρά που αποκτήσατε προηγουμένως και να μετατρέψει σε ένα αντικείμενο XML ή τις αντίστοιχες δέντρο DOM. Ένα παράδειγμα αυτού είναι τα εξής:
1 2 | $doc = new DOMDocument(); $doc->loadHTML($cadena); |
Σε αυτόν τον κώδικα, Μπορούμε να δούμε ως, Πρώτα απ' όλα, Δημιουργήστε ένα έγγραφο DOMDocument, στην οποία στη συνέχεια φορτώνουμε το περιεχόμενο της μεταβλητής $αλυσίδα, που έχει ληφθεί προηγουμένως από τη συνάρτηση getContenidoWeb.
Με αυτόν τον τρόπο μπορείτε να πάρετε το περιεχόμενο μιας ιστοσελίδας χρησιμοποιώντας PHP και αργότερα μετατρέψετε σε XML, ή τις αντίστοιχες DOM δέντρο να είναι σε θέση να το διαχειριστεί καλύτερα.
