Comment utiliser les requêtes (bibliothèque Python)

TL;DR

--Requests est la bibliothèque HTTP ** moderne ** de Python.

Que sont les demandes

Bibliothèque HTTP Python. Python a une bibliothèque appelée urllib2, mais comme l'explique le site officiel, «Requests est une bibliothèque HTTP sous licence Apache2, écrite en Python, pour les êtres humains.», Il est facile pour les humains de coder.

introduction

pip install requests

Comment utiliser

Importer la bibliothèque

import requests

demande

Il existe une correspondance biunivoque entre diverses méthodes HTTP.

# GET
requests.get('URL')
# POST
requests.post('URL')
# PUT
requests.put('URL')
# DELETE
requests.delete('URL')
#Obtenir l'en-tête
requests.head('URL')

Assigner des paramètres

Ajoutez params = à l'argument de la méthode de requête avec hachage du paramètre à ajouter.

>>> payload = {'key1': 'value1', 'key2': 'value2'}
>>> r = requests.get('URL', params=payload)

En-tête personnalisé

Lors de la spécification d'un UA dans une requête GET

>>> headers = {'User-Agent': 'Sample Header'}
>>> requests.get('URL', headers=headers)

Lors de l'ajout de données à l'en-tête HTTP dans une requête POST

>>> payload = {'send': 'data'}
>>> requests.post('URL', data=json.dumps(payload))

Contenu de la réponse

text

Récupère le corps de la réponse renvoyée au format texte. La requête est automatiquement décodée en Unicode.

>>> r = requests.get('http://yahoo.com/')
>>> r.text
'<!DOCTYPE html>\n<html lang="en-US" class="dev-desktop uni-purple-border  bkt901 https  uni-dark-purple sasb-space" style="">\n<!-- m2 template  -->\n<head>\n    <meta http-equiv="Content-Type" ...

encoding

Obtenir des informations d'encodage

content

Obtenez le corps de la réponse au format binaire.

>>> import requests
>>> r = requests.get('http://www.fnal.gov/faw/designstandards/filesfordownload/FermiLogo_blue.gif')
>>> r.content

Traitement pour chaque réponse

image

Utilisez le module Image de PIL.

>>> from PIL import Image
>>> from StringIO import StringIO
>>> r = requests.get('http://www.fnal.gov/faw/designstandards/filesfordownload/FermiLogo_blue.gif')
>>> i = Image.open(StringIO(r.content))

JSON

>>> requests.get('http://ci.nii.ac.jp/ncid/BB08796640.json').json()
{'@context': {'foaf': 'http://xmlns.com/foaf/0.1/', 'prism': 'http://prismstandard.org/namespaces/basic/2.0/', 'rdfs': 'http://www.w3.org/2000/01/rdf-schema#', 'owl': 'http://www.w3.org/2002/07/ ...

échantillon

requests_use.py


# -*- coding: utf-8 -*-

import doctest
import requests

def sample(query):
    """ requests sample that use qiita search api
    >>> 'title' in sample('python')
    True
    >>> 'totle' in sample('python')
    False
    """
    q = {'q':  query}
    r = requests.get('https://qiita.com/api/v1/search', params=q)
    return list(r.json()[0].keys())

if __name__ == "__main__":
    doctest.testmod()

References

team information: (housyu, 3cdc8fdc466a6315c030)

Recommended Posts

Comment utiliser les requêtes (bibliothèque Python)
python3: Comment utiliser la bouteille (2)
[Python] Comment utiliser la liste 1
Comment utiliser Python Argparse
Python: comment utiliser pydub
[Python] Comment utiliser checkio
[Python] Comment utiliser input ()
Comment utiliser Python lambda
[Python] Comment utiliser virtualenv
python3: Comment utiliser la bouteille (3)
python3: Comment utiliser la bouteille
Comment utiliser les octets Python
Comment utiliser la bibliothèque C en Python
Comment utiliser la bibliothèque d'images Python dans la série python3
Python: comment utiliser async avec
[Python] Comment utiliser la série Pandas
Comment utiliser SQLite en Python
[Python] Comment utiliser la bibliothèque de création de graphes Altair
[Python] Comment utiliser la liste 3 Ajouté
Comment utiliser Mysql avec python
Comment utiliser l'API Python d'OpenPose
Comment utiliser ChemSpider en Python
Python: Comment utiliser pydub (lecture)
Comment utiliser PubChem avec Python
Comment utiliser la fonction zip de python
[Python] Comment utiliser l'API Typetalk
[python] Comment utiliser Matplotlib, une bibliothèque pour dessiner des graphiques
[Python] Résumé de l'utilisation des pandas
[Introduction à Python] Comment utiliser la classe en Python?
Comment installer et utiliser pandas_datareader [Python]
[python] Comment utiliser __command__, explication des fonctions
[Python] Comment utiliser import sys sys.argv
[Python] Organisation de l'utilisation des instructions
Mémorandum sur l'utilisation du python gremlin
[Python2.7] Résumé de l'utilisation d'unittest
python: Comment utiliser les locals () et globals ()
Comment utiliser __slots__ dans la classe Python
Comment utiliser "deque" pour les données Python
Comment utiliser le zip Python et énumérer
[Python] Comprendre comment utiliser les fonctions récursives
Résumé de l'utilisation de la liste Python
Comment utiliser les expressions régulières en Python
[Python2.7] Résumé de l'utilisation du sous-processus
Comment utiliser is et == en Python
[Question] Comment utiliser plot_surface de python
Comment utiliser xml.etree.ElementTree
Comment utiliser Python-shell
Remarques sur l'utilisation de tf.data
Comment utiliser virtualenv
Comment utiliser Seaboan
Comment utiliser la correspondance d'image
Comment installer Python
Comment utiliser Pandas 2
Comment utiliser Virtualenv
Comment utiliser pytest_report_header
Comment installer python
Comment utiliser partiel
Comment utiliser Bio.Phylo