Konuyu Oyla:
  • Toplam: 3 Oy - Ortalama: 3.67
  • 1
  • 2
  • 3
  • 4
  • 5
Python Dili Soru & Cevap
(13-03-2020, Saat: 16:21)HackLord Nickli Kullanıcıdan Alıntı:  Selam requests modulü kullanımı hakkında yardımcı olunuz lütfen.
Requests ile site kullanımı.
Örnek:Elimizde bir site var ve bu sitede buttanları kontor etme ve While döngüsüne input ekleyerek istediyimiz kadar döndürme.


Şimdi amacın eğer sitedeki butonları kontrol etme derken click işlemi yapmak veya bir siteye login olmaksa bunu direkt olarak requests modülünden beklemen yanlış olur. Çünkü requests modülü ile bir siteye istek atarsın ve oradan sana cevap gelir. Sonrasında gelen cevabı ne şekilde işleyeceğine göre farklı kütüphanelere başvurman gerekebilir. Mesela HTML etiketlerini ayrıştırıp işlemek için en çok beautiful soup kütüphanesi tercih edilir. Fakat login olmak ve basit click işlemleri için requests yerine mechanize modülüne bakman gerek. Ya da tarayıcının geliştirici seçeneklerinden (F12 basarak) sitedeki html yapısını inceleyip giriş yapacak login form yapısını inceleyip ona göre direkt requests session methodu kullanarak siteye giriş yapman da mümkündür. 


Aslında gerekli olan senin tam olarak ne yapmak istediğindir, eğer maksat python ve network bilgini geliştirmekse requests ile sayfaya atılan istek metodlarını header yapılarını falan incelemen, deneyerek öğrenmen gerekir.

GET methodu ile basit bir istek örneği;

import requests


r = requests.get("http://www.google.com")

if r.status_code == 200:
    content = r.content
    print(content)

Header göndererek:
import requests

headers = {
    "User-Agent":"Mozilla....",
    "Referer": "https://qpython.club"
}

r = requests.get("http://www.google.com", headers=headers)

if r.status_code == 200:
    content = r.content
    print(content)
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
gecemor abi bilgilerin için çok tesekkür ederim.
Verdigin bilgiler üzerinde çalışıp kavramını anlama çalışacağım.
Tam olarak demek istediyim bu degildi örenk aşağıda ki kod gibi requests modülü kullanarak bunu gibi işlemleri yapmayı ögrenmek amacım.
PHP Kod:
import requests
resp 
requests.post('https://site.com/sayfaindexi', {
 
 'text'' yazı',
 
 'messagr''Hello world',
 
 ' buttin ''button',
})
print(
resp.json()) 
Cevapla
(14-03-2020, Saat: 11:33)HackLord Nickli Kullanıcıdan Alıntı:  gecemor abi bilgilerin için çok tesekkür ederim.
Verdigin bilgiler üzerinde çalışıp kavramını anlama çalışacağım.
Tam olarak demek istediyim bu degildi örenk aşağıda ki kod gibi requests modülü kullanarak bunu gibi işlemleri yapmayı ögrenmek amacım.
PHP Kod:
import requests
resp 
requests.post('https://site.com/sayfaindexi', {
 
 'text'' yazı',
 
 'messagr''Hello world',
 
 ' buttin ''button',
})
print(
resp.json()) 


Evet burada post methodu ile data gönderilmiş, bu istekte text, messagr ve buttin parametreleri var. Fakat karşı sunucu bu isteğin cevabını her zaman json formatında göndermez. Göndermediği zaman da resp.json() hata verir. Bunu aslında karşıdan gelen header bilgilerinden "Content-Type" header'ından öğrenebiliriz.

if resp.headers["Content-Type"] == "application/json":
    print(resp.json())
else:
    print(resp.content)



Bunun gibi bir çok örnek verilebilir fakat senin daha detaylı incelemen gerekir. Daha sonra aklına takılan kısımları sorabilirsin, ben veya burada müsait olan diğer arkadaşlar yardımcı olmaya çalışır.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
[url=https://qpython.club/member.php?action=profile&uid=1]
Cevapla
(14-03-2020, Saat: 13:50)HackLord Nickli Kullanıcıdan Alıntı:  gecemor abi requests modulünü kullanarak böyle bir kod hazırladım lakin kod hata veriyor.Şimdiden tesekkür ederim
PHP Kod:
#-*-coding:utf8;-*-
#qpy:console
#qpy:2

import requests

resp 
requests.post('https://sifresiz.instahile.co/spam', {
 
 'text''Kullanıcı_İsmi',
 
 'button''submit',
})

print(
resp.json()) 


Şimdi biz genelde bir hata aldığımızda hata mesajını yazarız, ona göre neden hata vermiş olabileceği konusunda baştan fikrimiz olur ve daha hızlı sonuca varırız. Sana da tavsiyem ne gibi bir hata aldığını hata mesajı veya ekran görüntüsü olarak belirtmen. 

Onun haricinde kodu çalıştırdım ve karşıdan gelen cevap json olmadığı için hata verdiğini gördüm. Sana bir önceki postumda da requests'teki json() metodunun eğer içerik tipi json değilse hata vereceğini ve nasıl bir önlem alacağını belirtmiştim. Senin bu siteye attığın isteğe gelen cevabın içerik tipi (Content-Type) "text/html" dir. Bu yüzden json() methodu işlemez. Verdiğim örneğe tekrar bakmanı öneririm.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
gecemor hocam teşekkür ederim.Allah razı olsun.
Cevapla
[url=https://qpython.club/member.php?action=profile&uid=1][/url]
Cevapla
Bunu direkt olarak python ile veya başka bir web framework ile yapamazsın, domain'in name server adreslerini sunucunun sağlayıcısına eklemen gerek.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
# -*- coding: utf-8 -*-
# !/usr/bin/env python3

from time import sleep

kontrol = True
while kontrol:
   kontrol = False
   for i in range(10):
       print (i)
       sleep(1)
       if i == 5:
           kontrol = True
           break


While döngüsünü yarıda kesip baştan başlatmak için

Benim kod niye düzgün olmuyor Sad  Python kodunu seçtim çıkın kutucuğa kodu yapıştırdım.

Sayfayı yenileyince düzeldi. demek beklemek gerekiyormuş Big Grin
Ara
Cevapla
Metin, while içinde zaten for döngüsü bitene kadar while devam etmez. Eğer tabi Kontrol değişkeni belli koşullara göre devam edip etmemesi için diyosan zaten while döngüsünün en önemli işlevi de bu. True karşılığı ne ise o koşul devam ettiği sürece döner.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  15gb .myd uzantılı dosya python ile okutma perry 1 1,962 27-11-2022, Saat: 17:59
Son Yorum: perry
  GÜNCEL Python request , c# request e göre çok yavaş ne yapabilirim perry 12 5,024 28-09-2022, Saat: 20:27
Son Yorum: krast
  YENİ Python Pyqt5 memory leak sorunu perry 3 2,385 28-09-2022, Saat: 11:33
Son Yorum: gecemor
  YENİ PYTHON ads approval CaglarDevv 2 2,198 04-07-2022, Saat: 01:23
Son Yorum: CaglarDevv
  python konusunda yardıma ihtiyacım var $cr!pt HUB 3 1,640 15-06-2022, Saat: 18:11
Son Yorum: CaglarDevv

Hızlı Menü:


Konuyu Okuyanlar: 49 Ziyaretçi
Change Theme