Kann die Crawler-Technologie https crawlen?
Lassen Sie uns zunächst verstehen, was https ist
https ist HTTP+SSL Die Abkürzung HTTP besteht darin, den vorherigen Klartext basierend auf der HTTP-Übertragungsmethode zu verschlüsseln und zu übertragen. Die Informationsverschlüsselungsmethode und der geheime Schlüssel werden vor der Übertragung bestimmt. Auch wenn sie während der Übertragung erfasst oder gefälscht werden nicht durchgesickert sein.
Der Crawler tarnt sich im Wesentlichen als Browser, sendet eine Anfrage an den Server und nimmt am gesamten Prozess teil, sodass sogar https-Links gecrawlt werden können, allerdings nur, wenn der gefälschte Client über das richtige SSL-Zertifikat verfügt.
Finden Sie die Grundursache des Fehlers
Wenn beim Ausführen des Crawlers ein SSL-Fehler angezeigt wird, liegt dies normalerweise daran, dass das lokale Zertifikat oder die zugehörige SSL-Bibliothek und der Server nicht korrekt installiert sind verwendet ein eigenes CA-Zertifikat, das nicht von einer maßgeblichen Organisation zertifiziert ist.
Lösen von Zertifikatsausnahmeproblemen
Für das CCC-Zertifikatsproblem können wir auf die folgenden zentralisierten Lösungen verweisen :
1. Überprüfen Sie nicht das CCC-Zertifikat, sondern ignorieren Sie die Sicherheitswarnung
coding=utf-8import requests# 不验证CA证书则需要忽略安全警告方式一:import urllib3urllib3.disable_warnings()方式二:from requests.packages.urllib3.exceptions import InsecureRequestWarningrequests.packages.urllib3.disable_warnings(InsecureRequestWarning)r=requests.get(url=“https://www.baidu.com/”,verify=False)print r.elapsed.total_seconds()
2 Geben Sie den Speicherort des Zertifikats oder den Ordner an, der das Zertifikat enthält (dieser Ordner wird vom OpenSSL-Tool erstellt)
coding=utf-8import requestsr=requests.get(url=“https://www.baidu.com/”,verify='/path/to/certfile')
Das obige ist der detaillierte Inhalt vonKann die Crawler-Technologie https crawlen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!