Python

Python Requests Modülü 2023

Python Requests modülü, HTTP isteklerinin gönderilmesini ve alınmasını kolaylaştıran bir kütüphanedir. Bu blog yazısı, Python Requests modülünün nasıl kullanılacağını anlatan yazımız. Ve bilmemiz gerekenler:

  • Python Requests Modülü Nedir ve Neden Kullanılır?
  • Python Requests Modülü Kurulumu
  • HTTP İstekleri Göndermek: GET ve POST İstekleri
  • HTTP İsteklerine Yanıt Verme: Response ve Status Codes
  • Örnek Kullanımlar: Web Scraping ve API İstekleri

Python Requests Modülü Nedir ve Neden Kullanılır?

HTTP isteklerinin gönderilmesi ve alınması için kullanılan bir kütüphanedir. Ayrıca Bu modül, basit bir API ve kullanım kolaylığı sunarak, web sayfaları ve API’lar gibi HTTP tabanlı kaynaklara erişim sağlar.

Urllib ve httplib gibi standart Python kütüphanelerine kıyasla daha kullanıcı dostudur. Ayrıca, proxy desteği, otomatik yeniden yönlendirme, oturum yönetimi ve kullanıcı tanımlı başlıklar gibi birçok gelişmiş özellik sunar.

Python Requests Modülü Kurulumu

Python Requests modülünün kolayca yüklenebilmesi için, pip paket yöneticisi kullanılarak kurulması gerekmektedir. Aşağıdaki komutu kullanarak modülü yükleyebilirsiniz:

pip install requests

HTTP İstekleri Göndermek: GET ve POST İstekleri

Python Requests modülü, HTTP GET ve POST isteklerini göndermek için iki farklı fonksiyon sağlar: requests.get() ve requests.post().

HTTP GET isteği göndermek için, requests.get() fonksiyonunu kullanabilirsiniz. Örneğin:

import requests

response = requests.get('https://www.example.com')
print(response.content)

Bu kod bloğu, www.example.com adresine bir GET isteği gönderir ve yanıt olarak aldığı HTML içeriğini yazdırır.

HTTP POST isteği göndermek için, requests.post() fonksiyonunu kullanabilirsiniz. Örneğin:

import requests

data = {'username': 'john', 'password': 'secret'}
response = requests.post('https://www.example.com/login', data=data)
print(response.content)

Bu kod bloğu, www.example.com/login adresine bir POST isteği gönderir ve kullanıcı adı ve şifre ile birlikte gönderilen verileri kullanarak bir oturum açar.

HTTP İsteklerine Yanıt Verme: Response ve Status Codes

HTTP istekleri yanıtı, response nesnesi şeklinde döndürülür. Ayrıca Bu nesne, HTTP yanıtının durum kodunu, başlıklarını ve içeriğini içerir.

HTTP yanıtının durum kodunu kontrol etmek için response.status_code özelliğini kullanabilirsiniz. Örneğin:

import requests

response = requests.get('https://www.example.com')
if response.status_code == 200:
    print('Success!')
else:
    print('An error occurred.')

Bu kod bloğu, www.example.com adresine bir GET isteği gönderir ve yanıt olarak aldığı durum kodunu kontrol eder. Durum kodu 200 ise “Success!” yazdırır, aksi takdirde “An error occurred.” yazdırır.

Örnek Kullanımlar: Web Scraping ve API İstekleri

Web scraping veya API istekleri gibi işlemleri gerçekleştirmek için etkin bir şekilde kullanılabildiği gibi, birçok farklı senaryoda kullanıcılarına kolaylık sağlar. Ek olarak requests.get() fonksiyonu kullanarak bir web sayfasını scrape edebilirsiniz. Örneğin:

import requests
from bs4 import BeautifulSoup

response = requests.get('https://www.example.com')
soup = BeautifulSoup(response.content, 'html.parser')
print(soup.title.string)

Bu kod bloğu, www.example.com adresine bir GET isteği gönderir ve yanıt olarak aldığı HTML içeriğini, BeautifulSoup kütüphanesi yardımıyla parse eder ve sayfanın başlığını yazdırır.

API istekleri için, requests.get() veya requests.post() fonksiyonlarını kullanabilirsiniz. Örneğin:

import requests

response = requests.get('https://api.example.com/users')
if response.status_code == 200:
    data = response.json()
    for user in data:
        print(user['name'])
else:
    print('An error occurred.')

Bu kod bloğu, api.example.com adresine bir GET isteği gönderir ve yanıt olarak aldığı JSON verilerini yazdırır.

Daha ayrıntılı Dökümantasyon için: https://requests.readthedocs.io/en/latest/

https://www.learnyazilim.net/category/teknoloji/ adresini ziyaret ederek, daha fazla bilgi edinmek mümkündür.

Bunlar da hoşunuza gidebilir...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir