Heim >Backend-Entwicklung >PHP-Tutorial >Nehmen Sie sich zehn Minuten Zeit, um den Prozess der Implementierung eines Crawlers in PHP zu verstehen
Textinformationen
Wir versuchen, die Tischinformationen zu erhalten. Hier verwenden wir den Stundenplan eines bestimmten Schule stattdessen:
Als nächstes gehen wir zum Code:
a.php
<?php header( "Content-type:text/html;Charset=utf-8" ); $ch = curl_init(); $url ="表的链接"; curl_setopt ( $ch , CURLOPT_USERAGENT ,"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.113 Safari/537.36" ); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $content=curl_exec($ch); preg_match_all("/<td rowspan=\"\d\">(.*?)<\/td>\n<td rowspan=\"\d\">(.*?)<\/td><td rowspan=\"\d\" align=\"\w+\">(.*?)<\/td><td rowspan=\"\d\" align=\"\w+\">(.*?)<\/td><td>(.*?)<\/td>\n<td>(.*?)<\/td><td>(.*?)<\/td>/",$content,$matchs,PREG_SET_ORDER);//匹配该表所用的正则 var_dump($matchs);
Dann lass es uns ausführen:
Der Stundenplan wurde erfolgreich abgerufen
Bilderfassung
Absoluter Link
Nehmen wir als Beispiel die Homepage der Baidu Gallery
b.php
<?php header( "Content-type:text/html;Charset=utf-8" ); $ch = curl_init(); $url="http://image.baidu.com/"; curl_setopt ( $ch , CURLOPT_USERAGENT ,"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.113 Safari/537.36" ); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $content=curl_exec($ch); $string=file_get_contents($url); preg_match_all("/<img ([^ alt="Nehmen Sie sich zehn Minuten Zeit, um den Prozess der Implementierung eines Crawlers in PHP zu verstehen" >]*)\s*src=('|\")([^'\"]+)('|\")/", $string,$matches); $new_arr=array_unique($matches[3]); foreach($new_arr as $key){ echo "<img src=$key alt="Nehmen Sie sich zehn Minuten Zeit, um den Prozess der Implementierung eines Crawlers in PHP zu verstehen" >"; }
Dann erhalten wir Folgendes Seite:
Relativer Link
Die meisten Links zu Bildern in der Baidu-Galerie sind absolute Links, wenn wir also auf Webseitenbilder stoßen Das sind relative Links zur Zeit. Wie sollen wir damit umgehen? Tatsächlich ist es sehr einfach, den Schleifenteil in
zu ändern. Dann können wir das Bild auch im Browser ausgeben Ich hoffe, dass alle davon profitieren.
Empfohlenes Tutorial: „
PHP-TutorialDas obige ist der detaillierte Inhalt vonNehmen Sie sich zehn Minuten Zeit, um den Prozess der Implementierung eines Crawlers in PHP zu verstehen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!