2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Die Requests-Bibliothek von Python ist eine leistungsstarke und benutzerfreundliche HTTP-Bibliothek zum Senden von HTTP-Anfragen und zum Verarbeiten von Antworten. Es ist eines der beliebtesten Webcrawler-Frameworks in Python und wird häufig zum Extrahieren von Daten aus Webseiten, zum Crawlen von Websites und zum Durchführen von API-Aufrufen verwendet.
Mit der Anforderungsbibliothek können Sie ganz einfach verschiedene HTTP-Anfragen senden, darunter GET, POST, PUT, DELETE usw. Sie können ein HTTP-Anforderungsobjekt erstellen, die Anforderungsheader, den Anforderungstext und andere Parameter festlegen, dann die Anforderung senden und die Antwort erhalten. Die Anforderungsbibliothek bietet viele praktische Methoden zum Verarbeiten von Antworten, einschließlich des Abrufens von Antwortinhalten, des Parsens von JSON, des Parsens von HTML usw.
Wenn Requests nicht in der lokalen Python-Umgebung installiert ist, können Sie den Befehl im Eingabeaufforderungsfenster eingeben
pip install requests
Installieren Sie das Anforderungsmodul
Wir können eine Webseite nach Belieben öffnen, F12->"Strg+R" zum Aktualisieren verwenden und auf das Element im Namen doppelklicken
Sie können User-Agent und Cookie sehen
Im Folgenden sind einige häufig verwendete Funktionen und Verwendungsmöglichkeiten der Anforderungsbibliothek aufgeführt:
Senden Sie eine GET-Anfrage:
response = requests.get(url)
POST-Anfrage senden:
response = requests.post(url, data=payload)
Anforderungsheader festlegen:
- headers = {'User-Agent': 'Mozilla/5.0'}
- response = requests.get(url, headers=headers)
URL-Parameter übergeben:
- params = {'key1': 'value1', 'key2': 'value2'}
- response = requests.get(url, params=params)
Datei senden:
- files = {'file': open('file.txt', 'rb')}
- response = requests.post(url, files=files)
Holen Sie sich den Antwortinhalt:
print(response.text)
Analysieren Sie die JSON-Antwort:
json_data = response.json()
Analysieren Sie die HTML-Antwort:
- from bs4 import BeautifulSoup
- soup = BeautifulSoup(response.text, 'html.parser')
Behandlung von Ausnahmen:
- try:
- response = requests.get(url)
- response.raise_for_status()
- except requests.HTTPError as e:
- print('HTTPError:', e)
- except requests.ConnectionError as e:
- print('ConnectionError:', e)
- except requests.Timeout as e:
- print('Timeout:', e)
- except requests.RequestException as e:
- print('RequestException:', e)
Das Obige ist nur ein kleiner Teil der Funktionen der Anforderungsbibliothek. Sie bietet auch viele andere erweiterte Funktionen und Optionen, wie z. B. Sitzungsverwaltung, Authentifizierung, Proxy-Einstellungen usw., die Ihnen beim einfachen Web-Crawling und API-Aufrufen helfen können.
Komplette Anforderungsfunktionsroutine:
- import requests
-
-
- def get_html(url):
- '''
- 两个参数
- :param url:统一资源定位符,请求网址
- :param headers:请求头
- :return html 网页的源码
- :return sess 创建的会话
- '''
-
- # 请求头
- headers={'User-Agent': '复制了放这里'}
- # 创建Session, 并使用Session的get请求网页
- sess = requests.Session()
- response = sess.get(url=url,headers = headers)
- # 获取网页信息文本
- html = response.text
-
- return html, sess