Python İstek Modülü Kılavuzu: Python'da İstek Kitaplığı Nasıl Kullanılır?

Yayınlanan: 2020-03-26

Web üzerinde, iş veya kişisel amaçlarla çalışırken, bazı bilgileri aramanız olasıdır. Veya videoları izlemek, veri yüklemek veya sosyal medyayı kontrol etmek için bir web sitesi kullanmak isteyebilirsiniz. İnternetteki tüm bu kaynaklara erişmek için tarayıcınız aracılığıyla İnternet sunucusuna bir istek göndermeniz gerekir.

HTTP (Köprü Metni Aktarım Protokolü) , bir istemci ile bir sunucu arasında İnternet üzerinden iletişimi sağlayan kurallar kümesidir. Python'da programlama yaparken bu istekleri request adlı bir modül kullanarak yapabilirsiniz . Python'da uzmanlık kazanmak için veri bilimi kurslarımıza göz atın.

Bu yazımızda Python request modülünün temellerini öğreneceğiz .

İçindekiler

Python İstekleri modülü

Python'daki request modülü, web üzerinde istek alışverişinde bulunmanıza olanak tanır. HTTP istekleri göndermek için birçok temel yöntem ve özelliğe sahip çok kullanışlı bir kütüphanedir. Daha önce belirtildiği gibi, HTTP, bir sunucu ve bir istemci arasında bir istek-yanıt sistemi olarak çalışır. Web tarayıcınız istemci olabilir ve erişmek istediğiniz siteyi barındıran sistem sunucudur. Tüm önemli python kitaplıklarına göz atın.

Bir sunucuya istek göndermek istediğinizde karşılaşacağınız iki yöntem vardır:

  • GET – Bu yöntem bir sunucudan veri istemek için kullanılır.
  • POST – Bu yöntem, bazı verilerin işlenmesi için sunucuya gönderilmesi için kullanılır.

Python istekleri modülü , tüm bu istekleri işlemek için kullanabileceğiniz basit bir API'ye sahiptir. URL'ler içinde parametreleri iletmek, başlık eklemek, özel başlıklar göndermek ve çok daha fazlası gibi birçok ilginç özellik sunar.

Daha Fazla Bilgi Edinin: Bilmeniz Gereken Python Modülleri

İstek modülüyle çalışmaya başlamak için ilk adım, modülü Python'a kurmaktır. Bunu yapmak için Python'da aşağıdaki kodu yazın:

$ pip yükleme istekleri

İstek modülünü kurmak için bir Python paketleme aracı olan Pipenv'i kullanmak isterseniz, aşağıdaki kodu yazın:

$ pipenv yükleme istekleri

Modülü kurduktan sonra import ederek programlarınız içerisinde kullanabilirsiniz. Aşağıdaki kodu kullanın:

içe aktarma istekleri

Şimdi python request modülünün en önemli yöntemlerini anlayalım – GET ve POST.

TALEP EDİN

Bu yöntem, bir URL'ye GET isteği göndermek için kullanılır. Bu, web'deki bir kaynaktan veri almak istediğinizi gösterir. Temel sözdizimi:

request.get(url, params={anahtar: değer}, argümanlar)

Burada url , isteği göndermek istediğiniz web sitesinin URL'sidir. Params , bir sorgu dizesi göndermek için kullanılan bir sözlük veya demet listesidir. Arg'lar , GET yöntemi tarafından sunulan çeşitli adlandırılmış argümanlardan (isteğe bağlı) herhangi biri veya daha fazlası olabilir . Ve bunlar:

  • allow_redirects – Bu, yeniden yönlendirmeyi etkinleştirmek veya devre dışı bırakmak için kullanılan bir Boole değeridir. Varsayılan değer: Doğru
  • auth – Bu, bir HTTP kimlik doğrulamasını etkinleştirmek için bir demetdir. Varsayılan değer: Yok
  • cert - Bu, bir sertifika dosyası veya anahtarından bahsetmek için bir demet veya dize olabilir. Varsayılan değer: Yok
  • timeout – İstemcinin bağlantı kurmasını veya bir yanıt göndermeden önce beklemesi gereken saniye sayısını belirten bir tanımlama grubu veya bir sayı olabilir. Varsayılan değer: Yok
  • doğrula – Bu, sunucunun TLS sertifikası doğrulamasını gösteren bir dize veya Boole değeridir. Varsayılan değer True'dur.
  • tanımlama bilgileri – Bu, belirtilen URL'ye göndermek istediğiniz tanımlama bilgileri sözlüğüdür. Varsayılan değer: Yok
  • başlıklar – Bu, bir URL'ye göndermek istediğiniz HTTP başlıklarını içeren bir sözlüktür. Varsayılan değer: Yok
  • akış – Yanıtın akışa alınması mı ( True ) yoksa hemen indirilmesi mi ( False ) gerektiğini belirten True veya False Boole değeridir . Varsayılan değer: Yanlış
  • proxy'ler – Bu, proxy URL'si için bir protokol sözlüğüdür. Varsayılan değer: Yok

Daha Fazla Bilgi Edinin: Makine Öğrenimi için Python Kitaplıkları

GET isteğini başarıyla gönderdikten sonra, yöntem bir request.Response nesnesi döndürür . Bu nesne, sunucudan alınan yanıtı saklar. get() yönteminin sonucunu bir değişkende saklayabilirsiniz. Ardından, bu yanıtın ayrıntılarını inceleyebilirsiniz. Bu konuda size yardımcı olan önemli özellikler şunlardır:

  • answer.content – ​​Bu size yanıt verilerinin içeriğini verir.
  • answer.status_code – Bu size talebinizin durumunu verir. Örneğin, 200 OK, isteğinizin başarılı olduğu anlamına gelir, ancak 404 NOT FOUND, isteğinizin kaynağı sizin için bulamadığı anlamına gelir.
  • answer.cookies – Bu, sunucudan aldığınız tüm tanımlama bilgilerine sahip bir CookieJar nesnesi elde etmek için kullanılır.

POST İsteği

post() yöntemini kullanarak bir sunucuya bazı bilgiler gönderebilirsiniz . İsteğin temel sözdizimi şöyledir:

request.post(url, data={anahtar: değer}, json={anahtar: değer}, argümanlar)

Önemli parametrelerden bazıları şunlardır:

  • url – Bu, bazı verileri göndermek istediğiniz URL'dir. Bu zorunlu bir parametredir.
  • data – Bu, URL'ye göndermek istediğiniz sözlüğü, dosya nesnesini veya demeti belirten isteğe bağlı bir parametredir.
  • json – Bu, URL'ye gönderilecek JSON nesnesidir.

args , aşağıdakiler gibi farklı adlandırılmış bağımsız değişkenlerden herhangi biri olabilir:

  • dosyalar – Bu, URL'ye göndermek için bir dosya sözlüğüdür.
  • üstbilgiler – Belirtilen URL'ye gönderilecek HTTP üstbilgileri sözlüğü.
  • çerezler – Bu, göndermek isteyebileceğiniz çerezlerin sözlüğünü belirtir.

get() gibi, post() yöntemi de bir request.Response nesnesi döndürür.

Toplama

Yukarıdaki python istekleri modülü öğreticisi, temel sunucu isteklerini yapmanızda size yardımcı olacaktır. Akılda tutulması gereken bir şey, get() yönteminin post() yönteminden daha az güvenli olmasıdır. Bunun nedeni, get()'de parametrelerin URL'den geçirilmesidir. Bu nedenle, şifreler gibi hassas bilgiler açığa çıkabilir. Bu nedenle, parolaların veya önemli bilgilerin değiş tokuş edilmesi gereken durumlarda post()'u kullanın.

Python, veri bilimi hakkında bilgi edinmek istiyorsanız, çalışan profesyoneller için oluşturulan ve 10'dan fazla vaka çalışması ve proje, pratik uygulamalı atölye çalışmaları, endüstri uzmanlarıyla mentorluk sunan IIIT-B & upGrad'ın Veri Biliminde Yönetici PG Programına göz atın , sektör danışmanlarıyla bire bir, en iyi firmalarla 400+ saat öğrenim ve iş yardımı.

Python'da İstek modülünün kullanımı nedir?

Belirtilen herhangi bir URL'ye HTTP istekleri yapmak için Python'da İstekler kitaplığı kullanılır. Python'da hem istek hem de yanıtı işlemek için çeşitli yerleşik işlevler vardır.

Belirtilen URL'ye HTTP isteği yapmak için HEAD, GET, PATCH, POST, PUT gibi farklı istekler yardımıyla Python İstekleri modülü kullanılır. HTTP isteği göndermenin ana nedeni, sunucudan veri almak veya belirli verileri sunucuya iletmektir. Bir isteğin, istek göndermek ve almak için istemci ve sunucu arasında bir köprü görevi göreceğini söyleyebiliriz. 5 istek türünün tamamı gereksinimlere göre farklı amaçlar için kullanılır.

Herhangi bir yanıt mesajının 3 bölümü nelerdir?

Tüm HTTP mesajları basit ve biçimlendirilmiş veri bloklarıdır. Her mesaj, ya istemci tarafından gelen istek mesajından ya da sunucu tarafından gelen cevap mesajından oluşacaktır. Her HTTP mesajı 3 bölüme ayrılmıştır:

1. Mesajı tanımlayan bir başlangıç ​​satırı.
2.Bütün niteliklerden oluşan bir başlık bloğu.
3. İletilecek gerekli verileri içeren isteğe bağlı bir gövde kısmı.

Herhangi bir HTTP mesajındaki URL, kaynakların bulunduğu adresi ifade eder. Öte yandan, protokol, bilgileri almak için kullanılması gereken HTTP protokolüne atıfta bulunacaktır.

Python'da POST yöntemi ne yapar?

Genellikle, sunucularda mevcut verilerin güncellenmesi için verilerin formlardan sunucuya gönderilmesi gerektiğinde, formlarda POST yöntemi kullanılır. request modülü, URL ve parametre değerleri yardımıyla verileri doğrudan sunucuya gönderebilen POST yöntemini sağlar. Herhangi bir web formunu göndermek veya herhangi bir dosyayı yüklemek için kullanılan daha olası bir istek yöntemidir.