56 votes

Python urllib vs httplib?

Quand quelqu'un utiliserait-il httplib et quand urllib?

Quelles sont les différences?

Je pense que je suis prêt à utiliser urllib avec httplib, je prévois de créer une application nécessitant une requête http, mais je n’ai jusqu’à présent utilisé que httplib.HTTPConnection en python pour les requêtes. En lisant à propos de urllib, je peux également l’utiliser pour les requêtes, Alors, quel est l'avantage de l'un ou l'autre?

46voto

Robus Points 3499

urllib (en particulier urllib2) gère beaucoup de choses par défaut ou a les bibliothèques appropriées pour le faire. Par exemple, urllib2 suivra automatiquement les redirections et vous pouvez utiliser cookiejar pour gérer les scripts de connexion. Ce sont toutes des choses que vous auriez à vous coder si vous utilisiez httplib.

33voto

Ambyte Points 403

Essayez les requêtes , le module très simple et puissant basé sur urllib2docs ici .

18voto

Lihang Li Points 81

Je voudrais dire quelque chose à propos de urllib, urllib2, httplib et httplib2.

La principale différence entre urllib* et httplib* est que:

httplib et httplib2 poignées HTTP/HTTPs de demande et de réponse directement et de vous donner plus d'espace pour faire votre propre travail.

urllib et urllib2 sont construits sur httplib, ils sont plus abstrait et plus puissant, mais parfois de ne pas répondre à votre besoin particulier sur certains HTTP opérations liées.

Et pour httplib et httplib2, je dirais qu'ils sont à la fois HTTP client library. Toutefois httplib2 est beaucoup plus puissant et beaucoup plus de fonctionnalités que httplib.

Comme pour urllib et urllib2, citer à partir de ce lien:

urllib et urllib2 sont à la fois des modules Python qui n'requête d'URL choses liées mais l'offre > fonctionnalités différentes. Leurs deux différences les plus importantes sont énumérées ci-dessous:

  • urllib2 peut accepter une Demande d'objet de définir les en-têtes pour une demande d'URL, urllib accepte uniquement une URL. Cela signifie que vous ne pouvez pas la mascarade de votre chaîne de l'Agent Utilisateur, etc.
  • urllib fournit la fonction urlencode méthode qui est utilisée pour la génération de chaînes de requête, urllib2 ne dispose pas d'une telle fonction. C'est une des raisons pour lesquelles urllib est souvent utilisé avec urllib2.

Je recommande mon blog personnel Httplib Httplib2 Urllib Urllib2-quelle est la Différence.

Espérons que cela aide:-)

10voto

Corey Goldberg Points 15625

urllib / urllib2 est construit sur httplib. Il offre plus de fonctionnalités que d'écrire directement dans httplib.

Cependant, httplib vous donne un contrôle plus fin sur les connexions sous-jacentes.

6voto

Matt Joiner Points 29194

Si vous utilisez uniquement http / https et avez besoin d'accéder à des éléments spécifiques à HTTP, utilisez httplib.

Dans tous les autres cas, utilisez urllib2.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X