Maison > développement back-end > Tutoriel Python > Comment récupérer le contenu d'une page à partir de requêtes asynchrones dans la bibliothèque de requêtes de Python ?

Comment récupérer le contenu d'une page à partir de requêtes asynchrones dans la bibliothèque de requêtes de Python ?

Patricia Arquette
Libérer: 2024-12-04 14:34:10
original
672 Les gens l'ont consulté

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

Gestion des requêtes asynchrones avec la bibliothèque de requêtes Python

Défi :

Alors que la documentation de la bibliothèque de requêtes fournit un exemple d'exécution asynchrone demandes, il manque de conseils sur la récupération du contenu de la page. Le code suivant ne parvient pas à accéder au contenu :

out = async.map(rs)
print out[0].content
Copier après la connexion

Solution :

Pour effectuer plusieurs tâches asynchrones à l'aide de async.map, suivez ces étapes :

  1. Définir une fonction de tâche : Créer une fonction pour gérer chaque tâche ou réponse objet.
  2. Ajouter un hook d'événement : Ajoutez cette fonction en tant que hook d'événement dans la requête pour spécifier quoi faire avec la réponse.
  3. Mappez les requêtes : Appelez async.map avec une liste de toutes les requêtes ou actions que vous souhaitez exécuter de manière asynchrone.

Exemple :

Considérez une liste d'URL et une tâche simple d'impression de l'URL de réponse :

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)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal