• 11-05-2021, 22:41:20
    #1
    Mehabalar,
    python da request ile bir bot yazmaya çalışıyorum ama cevap olarak 400 alıyorum yani bad request. Normalde bot tradingview'e giriş yapıp alarm oluşturuyor ama sebebini çözemediğim bir şekilde alarmları oluştururken hata alıyorum.
    Yardımcı olanlara şimdiden çok teşekkür ederim.


    Kod:


    import requests
    
    url = "https://pine-facade.tradingview.com/pine-facade/gen_alert/?user_name=*******"
    headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36',
        'origin': 'https://tr.tradingview.com'
    }
    data = {
        'alert_info': '{"version":21,"condition":{"id":"cross","fireInfo":{"frequency":"on_first_fire"},"mainSeries":{"id":"-273720050"},"alertSeries":
        {"id":"-273720050"},"band":{"id":"4iHylo"}},"statesForAlert":{"-273720050":{"id":"-273720050","uniqueId":"-273720050","type":"MainSeries","proSymbol":"BIST:XU100",
        "actualSymbol":"BIST_DLY:XU100","symbolString":"={\"symbol\":\"BIST_DLY:XU100\",\"adjustment\":\"splits\"}","interval":"1D","style":1,"styleInputs":{},
        "extendedHours":false,"dividendsAdjustment":false,"isSpread":false,"formatter":{"type":"price","state":{"fractional":false,"fractionalLength":2,"minMove":1,
        "minMove2":0,"priceScale":100}}},"4iHylo":{"id":"4iHylo","uniqueId":"4iHylo","type":"Value","value":"1441.3"}},"message":"BU BİR DENEMEDİR"}'
    }
    login_header = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36',
        'origin': 'https://tr.tradingview.com',
        'referer': 'https://tr.tradingview.com/chart/UBleIH5q/'
    }
    login_url = "https://tr.tradingview.com/accounts/signin/"
    login_data = {
        'username': '****',
        'password': '*****',
        'remember': 'off'
    }
    with requests.Session() as s:
        y = s.post(login_url, data=login_data, headers=login_header)
        print(y)
        response = s.post(url, data=data, headers=headers)
        print(response)
  • 11-05-2021, 23:05:18
    #2
    Aldığınız hata çıktısını paylaşabilir misiniz ?
  • 11-05-2021, 23:14:41
    #3
    BedirhanERKAN adlı üyeden alıntı: mesajı görüntüle
    Aldığınız hata çıktısını paylaşabilir misiniz ?
    Header da cookie gönderince 400 (bad request) göndermeyince 401 (unauthorized) alıyorum.
    Eğer isterseniz TeamViewer verebilirim
  • 11-05-2021, 23:38:05
    #4
    with requests.Session() as s:
        y = s.post(login_url, data=login_data, headers=login_header)
        print(y.content)
        response = s.post(url, data=data, headers=headers)
        print(response.content)
    ile gelen sayfa çıktısını görebilirsin. Ben denediğimde

    b'{"error":"xc3x9cye adxc4xb1 veya xc5x9fifre gexc3xa7ersiz","code":"invalid_credentials"}'
    b'{"code":401,"message":"Header 'X-Userid' is not specified"}'

    hatalarını aldım. Bu hataları çözerseniz sorunuz gidecektir. Ek olarak

    https://ittone.ma/ittone/how-can-i-g...n-tradingview/
    https://stackoverflow.com/questions/...in-tradingview
    sizin konularınız olsa gerek ?

    Saygılarımla,
  • 11-05-2021, 23:42:16
    #5
    BedirhanERKAN adlı üyeden alıntı: mesajı görüntüle
    with requests.Session() as s:
        y = s.post(login_url, data=login_data, headers=login_header)
        print(y.content)
        response = s.post(url, data=data, headers=headers)
        print(response.content)
    ile gelen sayfa çıktısını görebilirsin. Ben denediğimde

    b'{"error":"xc3x9cye adxc4xb1 veya xc5x9fifre gexc3xa7ersiz","code":"invalid_credentials"}'
    b'{"code":401,"message":"Header 'X-Userid' is not specified"}'

    hatalarını aldım. Bu hataları çözerseniz sorunuz gidecektir. Ek olarak

    https://ittone.ma/ittone/how-can-i-g...n-tradingview/
    https://stackoverflow.com/questions/...in-tradingview
    sizin konularınız olsa gerek ?

    Saygılarımla,
    Teşekkürler hocam content ile baktığımda problemin datada yani alert-info'da olduğunu gördüm.
    Bu arada attığınız konulardaki soruları ben açtım ama cevap gelmedi malesef.
  • 12-05-2021, 10:06:27
    #6
    Rica ederim,

    Kaynak ve dokümantasyon bulamadığım için net bir şey sunamıyorum. Sadece aldığınız hatayı görmeniz sizin için en azından ne yapacağını araştırmanız demek olduğu için paylaşmak istedim. Genellikle bu tarz sorunlarda yapmanız gereken gelmesi gereken veri ile gönderilmesi gereken veriyi kontrol etmektir. x gönderdim y sonucu gelecekti, geldimi ? Konuda belirttiğiniz data JSON editörü ile bozuk gözüküyordu. Kısacası TEST BİRİMLERİNİ doğru kullanmak olacaktır.


    https://realpython.com/python-testing/
    Saygılarımla,