Heim > Backend-Entwicklung > Python-Tutorial > Wie rufe ich Seiteninhalte aus asynchronen Anforderungen in der Anforderungsbibliothek von Python ab?

Wie rufe ich Seiteninhalte aus asynchronen Anforderungen in der Anforderungsbibliothek von Python ab?

Patricia Arquette
Freigeben: 2024-12-04 14:34:10
Original
668 Leute haben es durchsucht

How to Retrieve Page Content from Asynchronous Requests in Python's Requests Library?

Asynchrone Anforderungsverarbeitung mit der Python-Anforderungsbibliothek

Herausforderung:

Während die Dokumentation der Anforderungsbibliothek ein Beispiel für die asynchrone Ausführung bietet Bei Anfragen fehlt eine Anleitung zum Abrufen von Seiteninhalten. Der folgende Code kann nicht auf den Inhalt zugreifen:

out = async.map(rs)
print out[0].content
Nach dem Login kopieren

Lösung:

Um mehrere asynchrone Aufgaben mit async.map auszuführen, befolgen Sie diese Schritte:

  1. Definieren Sie eine Aufgabenfunktion: Erstellen Sie eine Funktion, um jede Aufgabe oder Antwort zu verarbeiten Objekt.
  2. Ereignis-Hook hinzufügen:Fügen Sie diese Funktion als Ereignis-Hook in der Anfrage hinzu, um anzugeben, was mit der Antwort geschehen soll.
  3. Anfragen zuordnen : Rufen Sie async.map mit einer Liste aller Anfragen oder Aktionen auf, die Sie ausführen möchten asynchron.

Beispiel:

Betrachten Sie eine Liste von URLs und eine einfache Aufgabe zum Drucken der Antwort-URL:

import async

urls = [
    'http://python-requests.org',
    'http://httpbin.org',
    'http://python-guide.org',
    'http://kennethreitz.com'
]

def do_something(response):
    print(response.url)

async_list = []

for u in urls:
    action_item = async.get(u, hooks={'response': do_something})
    async_list.append(action_item)

async.map(async_list)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie rufe ich Seiteninhalte aus asynchronen Anforderungen in der Anforderungsbibliothek von Python ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage