- 3 Ara 2022
- 50
- 37
requests Kütüphanesi Nedir, Ne işe yarar ?
'requests' HTTP isteklerini yapmak ve yanıtlarını işlemek , API servisleri ile iletişim kurmak için kullanılan kütüphanedir.
requests kütüphanesi GET POST PUT DELETE OPTIONS gibi HTTP yöntemlerini destekler.
Başlık ekleme (header), oturum yönetimi (authentication), veri gönderimi (json,text,file ) gibi birçok işlevide yapmanıza olanak tanır.
Peki Ne Yapabilirim?
Web uygulamaları için otomasyon (bot)
Veri gönderimi, güncelleme, ekleme , silme gibi işlemleri yapabilirsiniz.
Web uygulamalarında zafiyet tarama aracı
Brute Force Aracı gibi gibi
Requestes kütüphanesi kullanabilmeniz için öncelikle yüklemeniz gerekiyor.
Python:
pip install requests
Python:
import requests
Requestes Kullanımı
Python:
[LEFT] requests.metodismi(parametreler)[/LEFT]
url = "http://google.com" #sürekli kullanacağım için değişkene atadım.
#GET ile
sendReq = requests.get(url)
#POST ile
post_verisi = {
'ad' : 'pow',
'soyad':'turkhackteam'}
sendReq = requests.post(url,data=post_verisi)
###PUT ,DELETE,OPTIONS
sendReq = requests.put(f'{url}/put', data={'key': 'value'})
sendReq= requests.delete(f'{url}/delete')
sendReq = requests.options(f'{url}/get')
Bu kullanımlara ek olarak kullanabilceğimiz argümanlar bulunmakta.Bu argümanlar urlden sonra yazılır.
Python:
params= url'e parametre eklemek için kullanılır.
parametreler = {'page' : 'anasayfa', 'id':'1'} #burada dict(sözlük) key:value veri tipi kullanılır.
req = requests.get(url,params=parametreler)
#Tekli kullanım
req = requests.get(url,params={'page' : 'anasayfa'})
headers= HTTP Başlıklarını eklemek için kullanılır.
http_baslik = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 OPR/104.0.0.0',
'Host':'turkhackteam.org',
'Origin':'tht.org'
req = requests.get(url,headers=http_baslik)
data= POST ile istek yaparken veri eklemek için kullanılır.
post_verisi = {
'ad' : 'pow',
'soyad':'turkhackteam'}
sendReq = requests.post(url,data=post_verisi)
proxies= proxy kullanmak için
req = requests.get(url,proxies={"https":"https://1.1.1.1:9050"})
İsteğe karşılık gelen cevap(Response) bilgileri için ;
Python:
req = requests.get(url)
req.status_code
status_code isteğe karşılık gelen cevabın HTTP durum kodunu verir. Örnek 200,403,404,503 gibi gibi
req = request.get(url)
req.text
# text formatında isteğe karşılık gelen cevabı verir.
req = requests.get(url)
req.json
# json formatında isteğe karşılık gelen cevabı verir.
Basit Örnek
Python:
import requests
url = "https://webhook.site/#id"
http_header = {'User-Agent':'Mozilla Firefox Win11',
'Origin':"google.com"}
data = {'ad':'py-pow',
'forum':'turkhackteam.org'}
sendReq = requests.post(url,headers=http_header,data=data)
if sendReq.status_code == 200:
print("Başarılı")
print(sendReq.text)
else:
print("Başarısız!")
Son düzenleme: