Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Döviz Sitesinden Veri Çekme
#1
Python kullanamya yeni başladım ilk çalışmam, kod oldukça basit. Şimdilik 5 tane veri Çalıştırabildim.
İstek olursa Geliştirebilirim.

Kod:
import requests
from bs4 import BeautifulSoup

c = """

Kullanabilmek için komutlar:

Kanada : CAD

EURO   : EUR

DOLAR  :USD

İNGİLİZ STERLİNİ    :GBP

İSVİÇRE: CHF
gibi komutlar vererek kullanabilirsiniz.

"""
print(c)
#--------------------------
boş = []
istek = input("Döviz :")
istek = istek.upper()
#--------------------------
url = "http://www.doviz.com/"
veri = requests.get(url)
soup = BeautifulSoup(veri.content,"html.parser")
#print(soup)
gelen_veri = soup.find_all("div",{"class":"grid4 doviz-column2 btgreen"})
gelen_veri = soup.find_all("ul")
gelen_veri = soup.find_all("li",{"data-table-homepage-key":istek})
#print(gelen_veri)
for i in gelen_veri:
   boş+=i
   print("-------------------")
   for alış_fiyatı in boş[5]:
       print("alış fiyatı  :{}".format(alış_fiyatı))
   for satış_fiyatı in boş[7]:
       print("satış fiyatı :{}".format(satış_fiyatı))
       print("-------------------")
Ara
Cevapla
#2
değişken isimleri verirken Türkçe karakterler kullanmışsın? Bu şekilde hata verecektir, sen nasıl test edebildin ki, python3 mü kullanıyosun ?
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#3
evet python 3 sürümü
KOD YAZMAK İNSANA DÜŞÜNMEYİ ÖĞRETİR Cool
Ara
Cevapla
#4
Neyse o zaman python3 ile tekrar bakarım, ayrıca python öğrendiğin için tebrikler, devamını bekleriz. Tabi yazılan bir miktarın döviz kurlarına göre ne kadar edeceğini de hesaplatabilirdin aslında.
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#5
okuldan dönünce güncellerim Smile
Ara
Cevapla
#6
gecemor abi dönüştüreceğim ama gelen veride sayılar arasında "," olduğu için integer yada float a dönüşmüyor ne yapmalıyım?
Ara
Cevapla
#7
şimdi tam olarak nasıl bir şey denediğini bilmiyorum, ama döviz kurunu biliyorsan (sunucudan geliyorsa) bunu integer'a dönüştürüp kullanıcıdan aldığın rakam ile işlem yapabilirsin bence. Tabi gelen veriyi işlemek gerek, arasında "," var demiştin ama gelen veri tam olarak ne? eğer karışıksa, replace veya split metodları ile kesip kırpıp temize döviz kurunu temize çıkartabilirsin. Ama json verisi dönüyosa cevap olarak o zaman daha da basit bir şekilde alabilirsin. Yardımcı da olurum ama karşıdan gelen veri tam olarak ne?
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#8
3,5483 böyle gelen veriyi temize çıkaramadım yani ordaki virgülü nokta yapmam gerek liste içinde geliyor bu veri ve string olarak.

Tamamdır halletim gelen veriyi karakter dizini ile birleştirip replace ile düzenledim Smile
Ara
Cevapla
#9
tamam o zaman kolay gelsin sana Wink
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club
Cevapla
#10
import requests
from bs4 import BeautifulSoup
import time
boş = []
boş_2 = []
boş_3 = []

# soru sorduk
iste = input("\033[93m TL ÇEVİRMEK İÇİN (1) BAŞKA İŞLEM İÇİN (2):")
url = "https://kur.doviz.com/"
response = requests.get(url).content
soup = BeautifulSoup(response,"html.parser")




print(30*"-")

print(30*"-")
if iste == "1":

# cevap 1 olursa bu sorulacak.
fiyat = input(" \033[96m TÜRK LİRASI GİRİNİZ.")

kur = input(" \033[96m Dönüştürmek istediğiniz kur :")

kur = kur.upper()
temizle = soup.find_all("table", {"id": "currencies"})
temizle = soup.find_all("tbody")
temizle = soup.find_all("tr", {"data-table-subpage-key": kur})
for i in temizle:
boş += i

for alış_fiyati in boş[7]:
print("{} alış fiyatı :".format(kur), alış_fiyati)
for satış_fiyatı in boş[9]:
print("{} satış fiyatı:".format(kur), satış_fiyatı)
print(30*"_")
d = ""
d+=satış_fiyatı
c =d.replace(",",".")
g = float©
fiyat = float(fiyat)
hesap = fiyat/g

print(fiyat,"TL = ",hesap,kur,"ediyor.")
elif iste== "2":
h = input(" \033[96m Para miktarını giriniz :")
h = float(h)
al = input(" \033[96m şuanki para biriminiz :")
al = al.upper()
temizle_1 = soup.find_all("table", {"id": "currencies"})
temizle_1 = soup.find_all("tbody")
temizle_1 = soup.find_all("tr", {"data-table-subpage-key": al})
for i in temizle_1:
boş_2 += i

for alış_fiyati in boş_2[7]:
print("{} alış fiyatı :".format(al), alış_fiyati,)
for satış_fiyatı in boş_2[9]:
print("{} satış fiyatı :".format(al), satış_fiyatı)
print(30*"_")

q = ""
q+=satış_fiyatı
s =q.replace(",",".")
t = float(s)

soru = input(" \033[96m çevrilmesini istediğiniz kur :")
soru = soru.upper()

temizle_2 = soup.find_all("table", {"id": "currencies"})
temizle_2 = soup.find_all("tbody")
temizle_2 = soup.find_all("tr", {"data-table-subpage-key": soru})
for i in temizle_2:
boş_3 += i

for alış_fiyati_1 in boş_3[7]:
print("{} alış fiyatı :".format(soru), alış_fiyati_1,)
for satış_fiyatı_1 in boş_3[9]:
print("{} satış fiyatı :".format(soru), satış_fiyatı_1)
print("Hesaplanıyor, lütfen bekleyin.")
print(30*"=")

salla = ""
salla += alış_fiyati_1
k = salla.replace(",", ".")
ş = float(k)
hesap_1 = t/ş
print(h*hesap_1)

gecemor abi kodu düzenledim şimdi daha kapsamlı ve iyi hesaplama yapıyor Smile
KOD YAZMAK İNSANA DÜŞÜNMEYİ ÖĞRETİR Cool
Ara
Cevapla

{lang: 'en'}


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Kodun içindeki m3u8 çekme yardım aras5757 3 714 23-02-2020, Saat: 05:17
Son Yorum: kocero64
  Python içine veri kaydetme SD-16 6 2,013 25-04-2019, Saat: 00:47
Son Yorum: gecemor
  YENİ Veri Şifreleme teaqara 6 6,407 27-05-2018, Saat: 16:05
Son Yorum: Nanobit
  GÜNCEL Site kaynağından Regex ile veri bulma [yeni kod eklendi] Ethnic 20 13,751 12-05-2017, Saat: 23:44
Son Yorum: Mehmet Zerey

Hızlı Menü:


Konuyu Okuyanlar: 1 Ziyaretçi
Change Theme