requests — HTTP istemcisi

requests modülü, Python requests kütüphanesine benzer minimal bir HTTP/HTTPS istemci API’si sağlar. Her istek fonksiyonu bir requests.Response nesnesi döndürür.

Örnek:

import requests

# GET a JSON resource.
r = requests.get("https://httpbin.org/get")
print(r.status_code, r.reason)
print(r.json())

# POST JSON.
r = requests.post(
    "https://httpbin.org/post",
    json={"id": 1, "value": 42},
    headers={"X-Source": "openmv"},
)
print(r.json())

Response sınıfı

class requests.Response(code: int, reason: str, headers: bytes = None, content: bytes = None)

Bir HTTP yanıtını temsil eder. Örnekler requests.request ve metot başına yardımcılar tarafından döndürülür.

status_code: int

Sunucu tarafından döndürülen tam sayı HTTP durum kodu.

reason: str

Sunucu tarafından döndürülen neden ifadesi (çözülmüş str).

encoding: str

requests.Response.headers ve requests.Response.content öğelerini çözmek için kullanılan dize kodlaması. Varsayılan değer "utf-8".

headers: str

requests.Response.encoding ile çözülmüş ve str olarak döndürülen yanıt başlıkları.

content: str

requests.Response.encoding ile çözülmüş ve str olarak döndürülen yanıt gövdesi.

json() dict

requests.Response.content içeriğini JSON olarak ayrıştırır ve elde edilen nesneyi döndürür.

Fonksiyonlar

requests.request(method: str, url: str, data: bytes | None = None, json: Any | None = None, files: dict | None = None, headers: dict = {}, auth: tuple | None = None, stream: Any | None = None) Response

url adresine bir HTTP isteği gönderir ve bir requests.Response döndürür.

  • methodstr olarak HTTP metodu (ör. "GET", "POST").

  • url — Hedef URL. http:// veya https:// ile başlamalıdır.

  • data — Ham istek gövdesi. Ayarlanırsa Content-Length otomatik olarak eklenir.

  • json — JSON’a serileştirilen ve gövde olarak gönderilen nesne. Content-Type: application/json başlığını ayarlar.

  • files — Alan adını bir (filename, fileobj) demetiyle eşleyen sözlük. multipart/form-data olarak gönderilir.

  • headers — Ek istek başlıklarından oluşan sözlük.

  • auth — HTTP Basic kimlik doğrulaması için (username, password) demeti.

  • stream — API uyumluluğu için kabul edilir; kullanılmaz.

requests.head(url: str, **kw: Any) Response

Bir HTTP HEAD isteği gönderir ve bir Response döndürür.

HEAD, sunucunun yalnızca durum satırı ve başlıklarla yanıt vermesi dışında GET ile özdeştir; gövde boştur. Bir kaynağın var olup olmadığını kontrol etmek, yükü indirmeden Content-Length / Content-Type başlıklarını incelemek veya daha ağır bir GET göndermeden önce bir URL’yi yoklamak için kullanın.

Argümanlar:

  • url – hedef URL; http:// veya https:// ile başlamalıdır.

  • headers (kwarg) – ek istek başlıklarından oluşan sözlük.

  • auth (kwarg) – HTTP Basic kimlik doğrulaması için (username, password) demeti.

request() fonksiyonundaki data / json / files / stream argümanları bütünlük için kabul edilir ancak HEAD için nadiren anlamlıdır.

requests.get(url: str, **kw: Any) Response

Bir HTTP GET isteği gönderir ve bir Response döndürür.

GET, url tarafından tanımlanan kaynağın bir temsilini almak için kullanılan standart fiildir. Güvenlidir (sunucu tarafında herhangi bir durum değişikliğine neden olmaz) ve bağımsız (idempotent) niteliktedir.

Argümanlar:

  • url – hedef URL; http:// veya https:// ile başlamalıdır.

  • headers (kwarg) – ek istek başlıklarından oluşan sözlük (örneğin Authorization veya Accept).

  • auth (kwarg) – HTTP Basic kimlik doğrulaması için (username, password) demeti.

data / json aracılığıyla bir istek gövdesi gönderilmesine alttaki request() tarafından izin verilir ancak çoğu sunucu tarafından yok sayılır.

requests.post(url: str, **kw: Any) Response

Bir HTTP POST isteği gönderir ve bir Response döndürür.

POST, url adresine veri gönderir; genellikle yeni bir alt kaynak oluşturur, bir form gönderimini tetikler veya bir eylem çağırır. Ne güvenli ne de bağımsız (idempotent) niteliktedir: tekrarlanan çağrılar yinelenen kaynaklar oluşturabilir.

Argümanlar:

  • url – hedef URL; http:// veya https:// ile başlamalıdır.

  • data (kwarg) – ham istek gövdesi (bytes benzeri). Otomatik olarak bir Content-Length başlığı gönderir.

  • json (kwarg) – JSON’a serileştirilen ve gövde olarak gönderilen nesne. Content-Type: application/json başlığını ayarlar.

  • files (kwarg) – bir alan adını (filename, fileobj) ile eşleyen sözlük. multipart/form-data olarak gönderilir.

  • headers (kwarg) – ek istek başlıklarından oluşan sözlük.

  • auth (kwarg) – HTTP Basic kimlik doğrulaması için (username, password) demeti.

data / json / files argümanlarından en fazla birini geçirin.

requests.put(url: str, **kw: Any) Response

Bir HTTP PUT isteği gönderir ve bir Response döndürür.

PUT, url adresindeki kaynağı sağlanan temsille değiştirir, yoksa onu oluşturur. Bağımsız (idempotent) niteliktedir: özdeş bir PUT isteğinin tekrarlanması aynı son durumu verir.

Argümanlar:

  • url – hedef URL; http:// veya https:// ile başlamalıdır.

  • data (kwarg) – ham değiştirme gövdesi (bytes benzeri).

  • json (kwarg) – JSON’a serileştirilen ve değiştirme gövdesi olarak gönderilen nesne. Content-Type: application/json başlığını ayarlar.

  • headers (kwarg) – ek istek başlıklarından oluşan sözlük.

  • auth (kwarg) – HTTP Basic kimlik doğrulaması için (username, password) demeti.

Yeni temsili taşımak için data veya json argümanlarından birini geçirin.

requests.patch(url: str, **kw: Any) Response

Bir HTTP PATCH isteği gönderir ve bir Response döndürür.

PATCH, url adresindeki kaynağa kısmi bir değişiklik uygular – yalnızca istek gövdesinde yer alan alanlar değişir. PUT aksine, bağımsız (idempotent) olması gerekmez (ancak birçok API onu öyle yapar).

Argümanlar:

  • url – hedef URL; http:// veya https:// ile başlamalıdır.

  • data (kwarg) – ham fark (delta) gövdesi (bytes benzeri). Format sunucuya bağlıdır (ör. JSON Patch, JSON Merge Patch).

  • json (kwarg) – JSON’a serileştirilen fark (delta) nesnesi. Content-Type: application/json başlığını ayarlar.

  • headers (kwarg) – ek istek başlıklarından oluşan sözlük.

  • auth (kwarg) – HTTP Basic kimlik doğrulaması için (username, password) demeti.

requests.delete(url: str, **kw: Any) Response

Bir HTTP DELETE isteği gönderir ve bir Response döndürür.

DELETE, url adresindeki kaynağın kaldırılmasını talep eder. Bağımsız (idempotent) niteliktedir: zaten silinmiş bir kaynağı silmek bir hata değildir (sunucu genellikle bir 404 döndürür, ancak son durum aynıdır).

Argümanlar:

  • url – hedef URL; http:// veya https:// ile başlamalıdır.

  • headers (kwarg) – ek istek başlıklarından oluşan sözlük.

  • auth (kwarg) – HTTP Basic kimlik doğrulaması için (username, password) demeti.

data / json aracılığıyla bir gövde gönderilmesine alttaki request() tarafından izin verilir ancak DELETE ile nadiren kullanılır.