Рубрики
Без рубрики

Запросы на удовольствие и прибыль

создание запросов с помощью библиотеки запросов на python

Автор оригинала: Kayode Adechinan T. Salami.

Вступление

Цель этого руководства-дать вам обзор того, как выполнять HTTP-запросы в python с помощью библиотеки requests . Позвольте себе быть очарованным лаконичностью и чистотой!

Настройка библиотеки запросов

Прежде всего, вам нужно будет установить requests библиотеку, подобную этой:

  $ pip install requests

ПОЛУЧИТЬ запрос

Сделать запрос GET очень просто. Смотрите сами!

  import requests
  r = requests.get("https://jsonplaceholder.typicode.com/posts")
  print(r.status_code)
  print(r.json())
  print(r.headers)

Всего в трех строках вы сделали запрос get, получили код ответа, ответ json и заголовки-три основных типа информации, которые вам нужны ежедневно. Фантастика!

ПОЛУЧИТЬ запрос с параметрами

Вы можете передать словарь в качестве параметров в запрос get с помощью params

  import requests
  payload = {'name': 'robert', 'age': '15'}
  r = requests.get('http://httpbin.org/get', params=payload)
  print(r.json()['args'])

Запрос на публикацию

Requests предоставляет нам параметр json для обработки запроса post.

  import requests
  payload = {'title': 'hello requests', 'body': 'do it and go home'}
  r = requests.post('https://jsonplaceholder.typicode.com/posts', json=payload)
  print(r.json())

ПОСТАВИТЬ запрос

Без комментариев!

  import requests
  payload = {'title': 'hello requests again', 'body': 'do it and go home now'}
  r = requests.put('https://jsonplaceholder.typicode.com/posts/1', json=payload)
  print(r.json())

Запрос на УДАЛЕНИЕ

Без комментариев!

  import requests
  r = requests.delete('https://jsonplaceholder.typicode.com/posts/1')
  print(r.status_code)

Добавление заголовков

Другим параметром здесь является заголовки . Как и в предыдущем случае, он принимает словарь заголовков.

  import requests
  payload = {'title': 'hello requests', 'body': 'do it and go home'}
  headers = {"Accept": "application/json", "Content-Type": "application/json"}
  r = requests.post('https://jsonplaceholder.typicode.com/posts', json=payload, headers=headers)
  print(r.json())

Загрузить файл

Потому что вам нужно будет отправить или загрузить файл. Заменить post на get во втором случае

  import requests
  url = 'http://httpbin.org/post'
  files = {'file': open('the_old_man.jpg', 'rb')}
  r = requests.post(url, files=files)
  print(r.json())

Базовая Аутентификация

Давайте проверим подлинность

  imports requests
  requests.get('https://somesecuredwebsite/user', auth=('username', 'password'))

Потоковый

Для того, чтобы эффективно обрабатывать большие данные, просто потоковая передача их!

  import json
  import requests
  streaming_request = requests.get('http://httpbin.org/stream/100', stream=True)
  for entry in streaming_request.iter_lines():
      if entry:
          print(json.loads(entry) )

Иду глубже

Вот и все! Это был взгляд. Достаточно для повседневных запросов. Не стесняйтесь идти дальше, взглянув на официальный запросы веб-сайт !