Heim > php教程 > PHP开发 > Beispiel für die Verwendung von PHP Curl zum Erfassen der Seite nach einem 302-Sprung

Beispiel für die Verwendung von PHP Curl zum Erfassen der Seite nach einem 302-Sprung

高洛峰
Freigeben: 2017-01-03 17:43:34
Original
2282 Leute haben es durchsucht

Das normale CURL-Crawling-Seitenverfahren von PHP lautet wie folgt:

$url = 'http://www.baidu.com';
 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_VERBOSE, true); 
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_TIMEOUT, 20); 
curl_setopt($ch, CURLOPT_AUTOREFERER, true); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
$ret = curl_exec($ch); 
$info = curl_getinfo($ch); 
curl_close($ch);
Nach dem Login kopieren


Wenn Sie den Status 302 crawlen, liegt das daran, dass während des Crawling-Vorgangs einige Sprünge erforderlich sind. Der nächste Link übergibt Parameter , und der nächste Link setzt ihn auch als illegalen Zugriff, wenn die entsprechenden Parameter nicht empfangen werden.

curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
Nach dem Login kopieren

Die Anzeige sollte normal sein.

Das Obige wird verwendet, um die Funktion zu ergreifen, was fast kein Problem sein sollte. Sie können CURLOPT_CUSTOMREQUEST-bezogene Informationen überprüfen.

Verwenden Sie für die HTTP-Anfrage eine benutzerdefinierte Anfragenachricht anstelle von „GET“ oder „HEAD“. Dies ist nützlich, um „DELETE“ oder andere verdecktere HTTP-Anfragen auszuführen. Gültige Werte sind „GET“, „POST“, „CONNECT“ usw. Das heißt, geben Sie hier nicht die gesamte HTTP-Anfrage ein. Beispielsweise ist die Eingabe von „GET /index.html HTTP/1.0rnrn“ falsch.

Weitere Beispiele für die PHP-Curl-Implementierung zum Ergreifen der Seite nach 302-Sprung und verwandte Artikel finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage