Python bietet eine Vielzahl von Möglichkeiten zum Herunterladen von Dateien aus dem Internet, die über HTTP mithilfe des urllib
-Pakets oder der requests
-Bibliothek heruntergeladen werden können. In diesem Tutorial wird erläutert, wie Sie diese Bibliotheken verwenden, um Dateien von URLs von Python herunterzuladen.
requests
Bibliothek
requests
ist eine der beliebtesten Bibliotheken in Python. Es ermöglicht das Senden von HTTP/1.1 -Anfragen, ohne die URLs oder die Formulierung von Postdaten manuell hinzuzufügen.
requests
Die Bibliothek kann viele Funktionen ausführen, einschließlich:
Senden Sie eine Anfrage
Zunächst müssen Sie die Bibliothek installieren, die Methode ist sehr einfach:
pip install requests
Um zu testen, ob die Installation erfolgreich ist, können Sie einfach den folgenden Befehl im Python -Interpreter eingeben:
import requests
Wenn die Installation erfolgreich ist, tritt kein Fehler auf.
HTTP -Anforderungen umfassen:
Senden Sie eine Get -Anfrage
Senden einer Anfrage ist sehr einfach, wie unten gezeigt:
import requests req = requests.get("https://www.google.com")
Der obige Befehl erhalten die Google -Seite und speichert die Informationen in status_code
.
import requests req = requests.get("https://www.google.com") req.status_code 200 # 200 表示请求成功
Was ist, wenn Sie den Codierungstyp der Google -Webseite wissen möchten?
req.encoding 'ISO-8859-1'
Vielleicht würde ich gerne wissen, was die Antwort ist:
req.text
Dies ist nur ein verkürzter Bestandteil des Antwortinhalts.
<code>'<meta content="Search the world\'s information, including webpages, imag...'</code>
Postanforderung
sendenEinfach ausgedrückt werden Postanfragen verwendet, um Daten zu erstellen oder zu aktualisieren, insbesondere für Formulareinreichungen.
Angenommen, es gibt ein Registrierungsformular und Sie müssen Ihre E -Mail -Adresse und Ihr Passwort eingeben. Wenn Sie auf die Schaltfläche "Register Senden" klicken, sieht die Postanforderung so aus:
data = {"email": "info@tutsplus.com", "password": "12345"} req = requests.post("http://www.google.com", params=data)
Senden Sie Put Anfrage
Put -Anforderung ähnelt einer Postanforderung und wird zum Aktualisieren von Daten verwendet. Beispielsweise zeigt die folgende API, wie eine Put -Anfrage ausgestellt werden soll:
data = {"name": "tutsplus", "telephone": "12345"} r.put("http://www.contact.com", params=data)
Anfrage löschen
Wie der Name schon sagt, wird eine Löschanforderung zum Löschen von Daten verwendet. Hier ist ein Beispiel für eine Löschanforderung:
data = {'name': 'Tutsplus'} url = "https://www.contact.com/api/" response = requests.delete(url, params=data)
urllib
Paket
urllib
Paket sammelt mehrere Module für die Verarbeitung von URLs:
urllib.error
enthält die von urllib.parse
ausgelöste Ausnahme, um URL robots.txt
Datei urllib.request
Wie unten gezeigt:
import urllib.request with urllib.request.urlopen('http://python.org/') as response: html = response.read()
Wenn Sie Internet -Ressourcen abrufen und speichern möchten, können Sie dies über die Funktion urlretrieve()
tun:
import urllib.request filename, headers = urllib.request.urlretrieve('http://python.org/') html = open(filename)
Verwenden Sie Python, um Bilder
herunterzuladen In diesem Beispiel werden die requests
-Bibliothek und urllib
Modul verwendet, um dieses Beispielbild herunterzuladen.
url = 'https://www.python.org/static/opengraph-icon-200x200.png' # 使用 urllib 下载 # 导入 urllib 库 import urllib.request # 将网络对象复制到本地文件 urllib.request.urlretrieve(url, "python.png") # 使用 requests 下载 # 导入 requests 库 import requests # 以二进制格式下载 url 内容 r = requests.get(url) # open 方法打开系统上的文件并写入内容 with open("python1.png", "wb") as code: code.write(r.content)
Verwenden Sie Python, um PDF -Dateien herunterzuladen
In diesem Beispiel wird eine PDF -Datei zu Google Trends heruntergeladen.
url = 'https://static.googleusercontent.com/media/www.google.com/en//googleblogs/pdfs/google_predicting_the_present.pdf' # 使用 urllib 下载 # 导入 urllib 包 import urllib.request # 将网络对象复制到本地文件 urllib.request.urlretrieve(url, "tutorial.pdf") # 使用 requests 下载 # 导入 requests 库 import requests # 以二进制格式下载文件内容 r = requests.get(url) # open 方法打开系统上的文件并写入内容 with open("tutorial1.pdf", "wb") as code: code.write(r.content)
Verwenden Sie Python, um ZIP -Dateien
herunterzuladenIn diesem Beispiel wird der Inhalt des Github -Repositorys heruntergeladen und die Dateien lokal gespeichert.
pip install requests
Verwenden Sie Python, um Videos
herunterzuladenIn diesem Beispiel wird eine Videovorlesung heruntergeladen.
import requests
Verwenden Sie Python, um CSV -Dateien zu herunterladen
Sie können auch die Bibliotheken requests
und urllib
verwenden, um CSV -Dateien herunterzuladen und das csv
-Modul zu verwenden, um die Antwort zu verarbeiten. Verwenden wir einige Beispiele für CSV -Adressdaten.
import requests req = requests.get("https://www.google.com")
Schlussfolgerung
Dieses Tutorial führt die am häufigsten verwendeten Datei -Download -Methoden und die häufigsten Dateiformate vor. Although less code is written when using the urllib
module, the .netrc
module is more recommended due to its simplicity, popularity, and many additional features including: keep-alive and connection pooling, sessions with cookie persistence, browser-style SSL verification, automatic content decoding, authentication, automatic decompression, Unicode response body, HTTP(S) proxy support, multipart file upload, streaming download, connection timeout, chunked request, requests
support).
Das obige ist der detaillierte Inhalt vonSo herunterladen Sie Dateien in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!