Jump to content
Son zamanlarda artan kullanıcı hesap hırsızlıkları sebebiyle tüm kullanıcılara şifre sıfırlama maili gönderilmiştir. Lütfen güveli şifreler seçiniz. Mevcut e-mail adresinize erişemiyorsanız, en aşağıdaki destek linkinden bize ulaşınız. ×

_Havadurumu Udf


blackman12
 Share

Recommended Posts

Fast Airbender için yazdığım fonksiyonları yayınlamaya devam edeyim. En iyisi bu bölüme biraz canlılık gerekiyor arkadaşlar. Şimdi de DMİ'den hava durumu bilgilerini çeken fonksiyonları sizinle paylaşıyorum:

SEHİRLER: burada DMİ nin desteklediği 81 il ve diğer ilçelerin ilkodları ve ilçe alfabetik sırasına göre kodları mevcuttur. $sehirler[x][0] komutunda il/ilçe kodu gelir. $sehirler[x][1] de ise il/ilçe adı gelir. Birazdan bahsedeceğim _YerOku fonksiyonu buradaki il/ilçe kodu ile çalışmaktadır.

$mesela = _YerOku fonksiyonu girdiğiniz il/ilçe koduna göre DMİ nin sayfasına bağlanır ve hava durumu verilerini okuyarak arraya kaydeder. burada $mesela bir array olarak döndüyse işlem başarılı olmuştur ve $mesela[0] değişkenine işlenecek veri depolanmıştır. $mesela[1] değişkenine ise ilkodu depolanmıştır.
Eğer $mesela bir array değil ve değeri -2 ise fonksiyon internet sayfasına bağlanamamış veya veriyi okuyamamış demektir. Eğer $mesela bir array değil ve değeri -1 ise girdiğiniz kod herhangi bir herhangi bir merkez bulunamamış demektir.

$mesela[0] değişkenine depoladığımız veriyi _CografiGetir, _SonDurumGetir, _XGunlukGetir fonksiyonlarında kullanacağız. Şimdi sırayla onları açıklayalım.

_CografiGetir fonksiyonu _YerOku fonksiyonunda belirtilen il hakkındaki cografi özellikleri çağırır.
$tCografi = _CografiGetir($mesela[0]) komutunu kullanırsak arraya depolanacak veriler sırayla şunlardır:
0: Sayi, 1: Yukseklik, 2: Enlem, 3: Boylam, 4: Gündoğumu, 5: Günbatımı, 6: Bölge, 7: Havza bilgisi

_SonDurumGetir fonksiyonu _YerOku fonksiyonunda belirtilen il hakkında son ulaşılan bilgileri çağırır.
Kullanımı: $tSonD = _SonDurumGetir($mesela[0]) komutunu kullanırsak arraya depolanacak veriler sırayla şunlardır:
0: Sayi, 1: Hava Durumu, 2: Sıcaklık, 3: Nem, 4: Basınç, 5: Görüş Mesafesi, 6: Rüzgar Yönü, 7: Rüzgar Hızı, 8: Son Durum Resim No, 9: Rüzgar Yön Resim No

_XGunlukGetir fonksiyonu _YerOku fonksiyonunda belirtilen il hakkında gelecek maksimum 5 gün hakkında bilgi verir.
Kullanımı: $t5Gunluk = _XGunlukGetir($mesela[0],3) = 3 günlük veri gelir. _XGunlukGetir($mesela[0]) = 5 günlük veri gelir.
Geri dönüşü ise şu şekildedir.
$t5Gunluk[a][ b] a= Gunler b= 0: Değişken Sayısı, 1: Tarih, 2: Minimum Sıcaklık, 3: Maksimum Sıcaklık, 4: Durum, 5: Minimum Nem, 6: Maksimum Nem, 7: Rüzgar Yönü,8: Rüzgar Hızı, 9: Hava Durum Resim No, 10: Rüzgar Yön Resim No
Örnegin $t5Gunluk[2][1] = değeri 2. günün tarihini verir. yada $t5Gunluk[1][2] = değeri 1. günün en düşük sıcaklık değerini verir.

[codebox]
Dim $sehirler[341][2] = [[340,340],[01,"ADANA"],[02,"ADIYAMAN"],[03,"AFYONKARAHISAR"],[04,"AGRI"],[05,"AMASYA"],[06,"ANKARA"],[07,"ANTALYA"],[08,"ARTVIN"],[09,"AYDIN"], _
[10,"BALIKESIR"],[11,"BILECIK"],[12,"BINGOL"],[13,"BITLIS"],[14,"BOLU"],[15,"BURDUR"],[16,"BURSA"],[17,"CANAKKALE"], [18,"CANKIRI"],[19,"CORUM"],[20,"DENIZLI"], _
[21,"DIYARBAKIR"],[22,"EDIRNE"],[23,"ELAZIG"],[24,"ERZINCAN"],[25,"ERZURUM"],[26,"ESKISEHIR"],[27,"GAZIANTEP"], [28,"GIRESUN"],[29,"GUMUSHANE"],[30,"HAKKARI"], _
[31,"HATAY"],[32,"ISPARTA"],[33,"MERSIN"],[34,"ISTANBUL"],[35,"IZMIR"],[36,"KARS"],[37,"KASTAMONU"],[38,"KAYSERI"],[39,"KIRKLARELI"],[40,"KIRSEHIR"], _
[41,"KOCAELI"],[42,"KONYA"],[43,"KUTAHYA"],[44,"MALATYA"], [45,"MANISA"],[46,"K.MARAS"],[47,"MARDIN"],[48,"MUGLA"],[49,"MUS"],[50,"NEVSEHIR"],[51,"NIGDE"], _
[52,"ORDU"],[53,"RIZE"],[54,"SAKARYA"],[55,"SAMSUN"], [56,"SIIRT"],[57,"SINOP"],[58,"SIVAS"],[59,"TEKIRDAG"],[60,"TOKAT"],[61,"TRABZON"],[62,"TUNCELI"], _
[63,"SANLIURFA"],[64,"USAK"],[65,"VAN"],[66,"YOZGAT"],[67,"ZONGULDAK"],[68,"AKSARAY"],[69,"BAYBURT"],[70,"KARAMAN"],[71,"KIRIKKALE"],[72,"BATMAN"],[73,"SIRNAK"], _
[74,"BARTIN"],[75,"ARDAHAN"],[76,"IGDIR"],[77,"YALOVA"],[78,"KARABUK"],[79,"KILIS"],[80,"OSMANIYE"],[81,"DUZCE"],[0201,"CELIKHAN"],[0301,"BAYAT"],[0302,"BASMAKCI"], _
[0303,"BOLVADIN"],[0304,"CAY"],[0305,"COBANLAR"],[0306,"DINAR"],[0307,"EMIRDAG"],[0308,"EVCILER"],[0309,"HOCALAR"],[0310,"ISCEHISAR"],[0311,"IHSANIYE"], _
[0312,"KIZILOREN"],[0313,"SANDIKLI"],[0314,"SINANPASA"],[0315,"SUHUT"],[0316,"SULTANDAGI"],[0401,"DOGUBEYAZIT"],[0402,"PATNOS"],[6801,"ORTAKOY"],[0501,"MERZIFON"], _
[0502,"SULUOVA"],[0601,"BALA"],[0602,"BEYPAZARI"],[0603,"CANKAYA"],[0604,"CUBUK"],[0605,"ELMADAG"],[0606,"ETIMESGUT"],[0607,"GOLBASI"],[0608,"GUDUL"],[0609,"HAYMANA"], _
[0610,"KALECIK"],[0611,"KAZAN"],[0612,"KECIOREN"],[0613,"KIZILCAHAMAM"],[0614,"MAMAK"],[0615,"NALLIHAN"],[0616,"POLATLI"],[0617,"SEREFLIKOCHISAR"],[0701,"ALANYA"], _
[0702,"DEMRE"],[0703,"ELMALI"],[0704,"FINIKE"],[0705,"KAS"],[0706,"KEMER"],[0707,"KEPEZ"],[0708,"KONYAALTI"],[0709,"KORKUTELI"],[0710,"KUMLUCA"],[0711,"MANAVGAT"], _
[0801,"HOPA"],[0901,"DIDIM"],[0902,"KUSADASI"],[0903,"SULTANHISAR"],[0904,"SOKE"],[0905,"NAZILLI"],[1001,"AYVALIK"],[1002,"DURSUNBEY"],[1003,"BANDIRMA"], _
[1004,"EDREMIT"],[1005,"GONEN"],[1006,"MARMARAADASI"],[1007,"SINDIRGI"],[7401,"AMASRA"],[1101,"BOZUYUK"],[1102,"GOLPAZARI"],[1103,"OSMANELI"],[1104,"PAZARYERI"], _
[1105,"SOGUT"],[1301,"MUTKI"],[1501,"BUCAK"],[1502,"TEFENNI"],[1601,"GEMLIK"],[1602,"HARMANCIK"],[1603,"INEGOL"],[1604,"KELES"],[1605,"M.KEMALPASA"], _
[1606,"YENISEHIR"],[1701,"BIGA"],[1702,"BOZCAADA"],[1703,"GOKCEADA"],[1704,"LAPSEKI"],[1705,"EZINE"],[1801,"CERKES"],[1802,"ILGAZ"],[1803,"YAPRAKLI"], _
[2001,"ACIPAYAM"],[2002,"BABADAG"],[2003,"CAMELI"],[2004,"CARDAK"],[2005,"CIVRIL"],[2006,"GUNEY"],[2007,"KALE-DENIZLI"],[2008,"KARAHAYIT"],[2009,"PAMUKKALE"], _
[2010,"SARAYKOY"],[2011,"TAVAS"],[8101,"AKCAKOCA"],[2201,"IPSALA"],[2202,"UZUNKOPRU"],[2501,"HINIS"],[2502,"OLTU"],[2601,"ALPU"],[2602,"CIFTELER"],[2603,"GUNYUZU"], _
[2604,"MIHALICCIK"],[2605,"SARICAKAYA"],[2606,"SIVRIHISAR"],[2607,"SEYITGAZI"],[2801,"SEBINKARAHISAR"],[3001,"CUKURCA"],[3002,"SEMDINLI"],[3101,"ISKENDERUN"], _
[7601,"ARALIK"],[3201,"AKSU"],[3202,"EGIRDIR"],[3203,"SENIRKENT"],[3204,"ULUBORLU"],[3205,"YALVAC"],[3401,"BAKIRKOY"],[3402,"BESIKTAS"],[3403,"BEYKOZ"], _
[3404,"BUYUKADA"],[3405,"CATALCA"],[3406,"EYUP"],[3407,"FATIH"],[3408,"HADIMKOY"],[3409,"KADIKOY"],[3410,"PENDIK"],[3411,"SARIYER"],[3412,"SILIVRI"],[3413,"SILE"], _
[3414,"SISLI"],[3415,"TUZLA"],[3416,"UMRANIYE"],[3417,"USKUDAR"],[3501,"ALIAGA"],[3502,"BERGAMA"],[3503,"BORNOVA"],[3504,"CESME"],[3505,"CIGLI"],[3506,"DIKILI"], _
[3507,"FOCA"],[3508,"GAZIEMIR"],[3509,"KEMALPASA"],[3510,"KONAK"],[3511,"MENEMEN"],[3512,"ODEMIS"],[3513,"SEFERIHISAR"],[3514,"SELCUK"],[3515,"TORBALI"],[4601,"AFSIN"], _
[4602,"ELBISTAN"],[7001,"ERMENEK"],[3601,"ARPACAY"],[3602,"KAGIZMAN"],[3603,"SARIKAMIS"],[3701,"INEBOLU"],[3801,"BUNYAN"],[3802,"DEVELI"],[3803,"PINARBASI"], _
[3804,"SARIZ"],[3805,"TOMARZA"],[3806,"YESILHISAR"],[7101,"KARAKECILI"],[7102,"KESKIN"],[3901,"DEMIRKOY"],[3902,"LULEBURGAZ"],[4001,"CICEKDAGI"],[4002,"MUCUR"], _
[4101,"GEBZE"],[4102,"GOLCUK"],[4103,"KANDIRA"],[4104,"KARTEPE"],[4201,"AKSEHIR"],[4202,"BEYSEHIR"],[4203,"CUMRA"],[4204,"EREGLI-KONYA"],[4205,"KARAPINAR"], _
[4206,"KULU"],[4207,"SEYDISEHIR"],[4301,"ALTINTAS"],[4302,"DOMANIC"],[4303,"DUMLUPINAR"],[4304,"EMET"],[4305,"GEDIZ"],[4306,"SAPHANE"],[4307,"SIMAV"], _
[4308,"TAVSANLI"],[4401,"AKCADAG"],[4402,"DOGANSEHIR"],[4403,"KALE-MALATYA"],[4501,"AKHISAR"],[4502,"ALASEHIR"],[4503,"DEMIRCI"],[4504,"KOPRUBASI"],[4505,"SALIHLI"], _
[4506,"SOMA"],[4507,"TURGUTLU"],[4701,"KIZILTEPE"],[4702,"MAZIDAGI"],[4703,"NUSAYBIN"],[3301,"ANAMUR"],[3302,"SILIFKE"],[4801,"BODRUM"],[4802,"DALAMAN"], _
[4803,"DATCA"],[4804,"FETHIYE"],[4805,"KOYCEGIZ"],[4806,"MARMARIS"],[4807,"MILAS"],[4808,"YATAGAN"],[4901,"MALAZGIRT"],[5001,"AVANOS"],[5002,"DERINKUYU"], _
[5003,"KOZAKLI"],[5004,"URGUP"],[5201,"GOLKOY"],[5202,"UNYE"],[5301,"ARDESEN"],[5401,"GEYVE"],[5402,"HENDEK"],[5403,"KARASU"],[5501,"BAFRA"],[5601,"BAYKAN"], _
[5602,"ERUH"],[5801,"DIVRIGI"],[5802,"GEMEREK"],[5803,"GURUN"],[5804,"KANGAL"],[5805,"SARKISLA"],[6301,"BIRECIK"],[6302,"CEYLANPINAR"],[6303,"SIVEREK"], _
[6304,"VIRANSEHIR"],[5901,"CERKEZKOY"],[5902,"CORLU"],[5903,"MALKARA"],[6001,"BASCIFTLIK"],[6002,"ERBAA"],[6003,"NIKSAR"],[6004,"TURHAL"],[6005,"YESILYURT"], _
[6006,"ZILE"],[6101,"MACKA"],[6202,"OF"],[6401,"BANAZ"],[6402,"ESME"],[6403,"SIVASLI"],[6404,"ULUBEY-USAK"],[6501,"MURADIYE"],[7701,"CINARCIK"],[6601,"AKDAGMADENI"], _
[6602,"BOGAZLIYAN"],[6603,"SORGUN"],[6701,"ALAPLI"],[6702,"CAYCUMA"],[6703,"DEVREK"],[6704,"EREGLI-KARADENIZ"]]

Func _YerOku($kod)
Local $text, $i, $t, $return[2]
if Not IsNumber($kod) then Return -1
for $i = 1 to $sehirler[0][0]
if Number($sehirler[$i][0]) = Number($kod) Then
$t = $i
Exitloop
endif
Next
$return[0] = BinaryToString(InetRead('http://www.dmi.gov.tr/tahmin/il-ve-ilceler.aspx?m='&$sehirler[$t][1],1))
if $return[0] = "" Then Return -2
if StringInStr(_AraGetir($return[0],"<title>","</title>"),"istenen merkez bulunamad") <> 0 then Return -1
$return[1] = $t
Return $return
EndFunc

Func _CografiGetir($text)
;tCografi: 0: Sayi, 1: Yukseklik, 2: Enlem, 3: Boylam, 4: Gündoğumu, 5: Günbatımı, 6: Bölge, 7: Havza
Local $tCografi[8]
$tCografi[0] = 7
$tCografi[1] = _AyirGetir($text,'pMerkezYuksekligi">','</p>')
$tCografi[2] = _AyirGetir($text,'pMerkezEnlem">','</p>')
$tCografi[3] = _AyirGetir($text,'pMerkezBoylam">','</p>')
$tCografi[4] = StringTrimLeft(_AyirGetir($text,'pMerkezGD">','</p>','>'),1)
$tCografi[5] = StringTrimLeft(_AyirGetir($text,'pMerkezGB">','</p>','>'),1)
$tCografi[6] = _KelimeDuzelt(_AyirGetir($text,'pMerkezBolge">','</p>'))
If $tCografi[6] = "Güneydoğu Anadolu" Then $tCografi[6] = "G. Anadolu"
If $tCografi[6] = "Doğu Anadolu" Then $tCografi[6] = "D. Anadolu"
$tCografi[7] = _KelimeDuzelt(_AyirGetir($text,'pMerkezHavza">','</p>'))
Return $tCografi
EndFunc

Func _XGunlukGetir($text,$x = 5)
;t5Gunluk[a][ b] a= Gunler b= 0: Değişken Sayısı, 1: Tarih, 2: Minimum Sıcaklık, 3: Maksimum Sıcaklık, 4: Durum, 5: Minimum Nem, 6: Maksimum Nem, 7: Rüzgar Yönü,
; 8: Rüzgar Hızı, 9: Hava Durum Resim No, 10: Rüzgar Yön Resim No
if $x > 5 then $x = 5
Local $t5Gunluk[$x][11], $a, $i
for $i = 1 to $x
if $i = 1 or $i = 3 or $i = 5 Then
$t5Gunluk[$i-1][0] = 10
$t5Gunluk[$i-1][1] = _AraGetir($text,'thmGun'&$i&'" class="arkaTrh">','</th>')
$t5Gunluk[$i-1][2] = _AraGetir($text,'thmMin'&$i&'" class="minS">','</td>')
$t5Gunluk[$i-1][3] = _AraGetir($text,'thmMax'&$i&'" class="maxS">','</td>')
$t5Gunluk[$i-1][4] = _KelimeDuzelt(_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/'))
$t5Gunluk[$i-1][5] = _AraGetir($text,'thmNemMin'&$i&'" class="minN">','</td>')
$t5Gunluk[$i-1][6] = _AraGetir($text,'thmNemMax'&$i&'" class="maxN">','</td>')
$t5Gunluk[$i-1][7] = _AyirGetir($text,'thmRuzgarYon'&$i&'">','" title="','"')
$t5Gunluk[$i-1][8] = _AraGetir($text,'thmRuzgarHiz'&$i&'">','</td>')
for $a = 1 to $hadise[0][0]
if StringInStr($hadise[$a][1],_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/')) Then
$t5Gunluk[$i-1][9] = $hadise[$a][0]
EndIf
Next
$t5Gunluk[$i-1][10] = _AyirGetir($text,'thmRuzgarYon'&$i&'">','.gif" alt="','/')
Else
if $i = 2 Then
$t5Gunluk[$i-1][0] = $x-1
Else
$t5Gunluk[$i-1][0] = 10
EndIf
$t5Gunluk[$i-1][1] = _AraGetir($text,'thmGun'&$i&'" class="arkaAlterTrh">','</th>')
$t5Gunluk[$i-1][2] = _AraGetir($text,'thmMin'&$i&'" class="arkaAlter minS">','</td>')
$t5Gunluk[$i-1][3] = _AraGetir($text,'thmMax'&$i&'" class="arkaAlter maxS">','</td>')
$t5Gunluk[$i-1][4] = _KelimeDuzelt(_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/'))
$t5Gunluk[$i-1][5] = _AraGetir($text,'thmNemMin'&$i&'" class="arkaAlter minN">','</td>')
$t5Gunluk[$i-1][6] = _AraGetir($text,'thmNemMax'&$i&'" class="arkaAlter maxN">','</td>')
$t5Gunluk[$i-1][7] = _AyirGetir($text,'thmRuzgarYon'&$i&'" class="arkaAlter">','" title="','"')
$t5Gunluk[$i-1][8] = _AraGetir($text,'thmRuzgarHiz'&$i&'" class="arkaAlter">','</td>')
for $a = 1 to $hadise[0][0]
if StringInStr($hadise[$a][1],_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/')) Then
$t5Gunluk[$i-1][9] = $hadise[$a][0]
EndIf
Next
$t5Gunluk[$i-1][10] = _AyirGetir($text,'thmRuzgarYon'&$i&'" class="arkaAlter">','.gif" alt="','/')
EndIf
Next
Return $t5Gunluk
EndFunc

Func _SonDurumGetir($text)
;SonDurum: 0: Sayi, 1: Hava Durumu, 2: Sıcaklık, 3: Nem, 4: Basınç, 5: Görüş Mesafesi, 6: Rüzgar Yönü, 7: Rüzgar Hızı, 8: Son Durum Resim No, 9: Rüzgar Yön Resim No
Local $tSonDurum[10]
$tSonDurum[0] = 9
$tSonDurum[1] = _KelimeDuzelt(_AyirGetir($text,'SonDurumHava">','" /> </p>','"'))
$tSonDurum[2] = _AyirGetir($text,'pSonDurumSicaklik">')
$tSonDurum[3] = _AraGetir($text,'pSonDurumNem"><strong>Nem</strong><em>: ','</em></p>')
$tSonDurum[4] = _AyirGetir($text,'pSonDurumBasinc">')
$tSonDurum[5] = _AyirGetir($text,'pSonDurumGorus">')
$tSonDurum[6] = _AyirGetir($text,'pSonDurumRuzgarYon">','" /> </p>','"')
$tSonDurum[7] = _AraGetir($text,'pSonDurumRuzgarHiz"><em>','</em></p>')
$tSonDurum[8] = ""
;MsgBox(0,"",_AyirGetir($text,'SonDurumHava">','" /> </p>','"'))
for $a = 1 to $hadise[0][0]
if StringInStr($hadise[$a][1],_AyirGetir($text,'SonDurumHava">','" /> </p>','"')) Then
if (Number(StringReplace(StringTrimLeft(_AyirGetir($text,'pMerkezGB">','</p>','>'),1),":","")) < Number(@HOUR&@MIN)) or (Number(StringReplace(StringTrimLeft(_AyirGetir($text,'pMerkezGD">','</p>','>'),1),":","")) > Number(@HOUR&@MIN)) Then
$tSonDurum[8] = "1" & $hadise[$a][0]
Else
$tSonDurum[8] = "0" & $hadise[$a][0]
EndIf
ExitLoop
EndIf
Next
if $tSonDurum[8] = "" or $tSonDurum[8] = "..." Then
if (Number(StringReplace(StringTrimLeft(_AyirGetir($text,'pMerkezGB">','</p>','>'),1),":","")) < Number(@HOUR&@MIN)) or (Number(StringReplace(StringTrimLeft(_AyirGetir($text,'pMerkezGD">','</p>','>'),1),":","")) > Number(@HOUR&@MIN)) Then
$tSonDurum[8] = "1" & $hadise[27][0]
Else
$tSonDurum[8] = "0" & $hadise[27][0]
EndIf
EndIf
$tSonDurum[9] = _AyirGetir($text,'pSonDurumRuzgarYon">','.gif" alt="',"/")
Return $tSonDurum
EndFunc[/codebox][b]

[size="3"][color="#FF0000"]Not: Fonksiyonların yapımı tamamen bana aittir ve Fast Airbender programında kullanımına göre yazılmıştır. Program içerisinde kullanıldıklarından dolayı kontrol komutlarını yazmadım ve tekrar bir düzenleme yapmadan sizinle paylaşıyorum. Örneğin : $tCografi = _CografiGetir("labalubatwisttwist") gibi bir kullanımla hata almanız normaldir.[/color][/size][/b]
Link to comment
Share on other sites

  • 3 hafta sonra ...

Devlet Meteoroloji Enstitüsü sitesini yenilemiş dolayısıyla bu kodlar eksik veya hatalı veriler çekiyor. Bu yüzden UDF de değişiklikler yaptım, ayrıca _Ayirgetir, _Aragetir fonksiyonlarını da yeni sürümleriyle güncellemeniz gerekli:

[codebox]Dim $sehirler[341][2] = [[340,340],[01,"ADANA"],[02,"ADIYAMAN"],[03,"AFYONKARAHISAR"],[04,"AGRI"],[05,"AMASYA"],[06,"ANKARA"],[07,"ANTALYA"],[08,"ARTVIN"],[09,"AYDIN"], _
[10,"BALIKESIR"],[11,"BILECIK"],[12,"BINGOL"],[13,"BITLIS"],[14,"BOLU"],[15,"BURDUR"],[16,"BURSA"],[17,"CANAKKALE"], [18,"CANKIRI"],[19,"CORUM"],[20,"DENIZLI"], _
[21,"DIYARBAKIR"],[22,"EDIRNE"],[23,"ELAZIG"],[24,"ERZINCAN"],[25,"ERZURUM"],[26,"ESKISEHIR"],[27,"GAZIANTEP"], [28,"GIRESUN"],[29,"GUMUSHANE"],[30,"HAKKARI"], _
[31,"HATAY"],[32,"ISPARTA"],[33,"MERSIN"],[34,"ISTANBUL"],[35,"IZMIR"],[36,"KARS"],[37,"KASTAMONU"],[38,"KAYSERI"],[39,"KIRKLARELI"],[40,"KIRSEHIR"], _
[41,"KOCAELI"],[42,"KONYA"],[43,"KUTAHYA"],[44,"MALATYA"], [45,"MANISA"],[46,"K.MARAS"],[47,"MARDIN"],[48,"MUGLA"],[49,"MUS"],[50,"NEVSEHIR"],[51,"NIGDE"], _
[52,"ORDU"],[53,"RIZE"],[54,"SAKARYA"],[55,"SAMSUN"], [56,"SIIRT"],[57,"SINOP"],[58,"SIVAS"],[59,"TEKIRDAG"],[60,"TOKAT"],[61,"TRABZON"],[62,"TUNCELI"], _
[63,"SANLIURFA"],[64,"USAK"],[65,"VAN"],[66,"YOZGAT"],[67,"ZONGULDAK"],[68,"AKSARAY"],[69,"BAYBURT"],[70,"KARAMAN"],[71,"KIRIKKALE"],[72,"BATMAN"],[73,"SIRNAK"], _
[74,"BARTIN"],[75,"ARDAHAN"],[76,"IGDIR"],[77,"YALOVA"],[78,"KARABUK"],[79,"KILIS"],[80,"OSMANIYE"],[81,"DUZCE"],[0201,"CELIKHAN"],[0301,"BAYAT"],[0302,"BASMAKCI"], _
[0303,"BOLVADIN"],[0304,"CAY"],[0305,"COBANLAR"],[0306,"DINAR"],[0307,"EMIRDAG"],[0308,"EVCILER"],[0309,"HOCALAR"],[0310,"ISCEHISAR"],[0311,"IHSANIYE"], _
[0312,"KIZILOREN"],[0313,"SANDIKLI"],[0314,"SINANPASA"],[0315,"SUHUT"],[0316,"SULTANDAGI"],[0401,"DOGUBEYAZIT"],[0402,"PATNOS"],[6801,"ORTAKOY"],[0501,"MERZIFON"], _
[0502,"SULUOVA"],[0601,"BALA"],[0602,"BEYPAZARI"],[0603,"CANKAYA"],[0604,"CUBUK"],[0605,"ELMADAG"],[0606,"ETIMESGUT"],[0607,"GOLBASI"],[0608,"GUDUL"],[0609,"HAYMANA"], _
[0610,"KALECIK"],[0611,"KAZAN"],[0612,"KECIOREN"],[0613,"KIZILCAHAMAM"],[0614,"MAMAK"],[0615,"NALLIHAN"],[0616,"POLATLI"],[0617,"SEREFLIKOCHISAR"],[0701,"ALANYA"], _
[0702,"DEMRE"],[0703,"ELMALI"],[0704,"FINIKE"],[0705,"KAS"],[0706,"KEMER"],[0707,"KEPEZ"],[0708,"KONYAALTI"],[0709,"KORKUTELI"],[0710,"KUMLUCA"],[0711,"MANAVGAT"], _
[0801,"HOPA"],[0901,"DIDIM"],[0902,"KUSADASI"],[0903,"SULTANHISAR"],[0904,"SOKE"],[0905,"NAZILLI"],[1001,"AYVALIK"],[1002,"DURSUNBEY"],[1003,"BANDIRMA"], _
[1004,"EDREMIT"],[1005,"GONEN"],[1006,"MARMARAADASI"],[1007,"SINDIRGI"],[7401,"AMASRA"],[1101,"BOZUYUK"],[1102,"GOLPAZARI"],[1103,"OSMANELI"],[1104,"PAZARYERI"], _
[1105,"SOGUT"],[1301,"MUTKI"],[1501,"BUCAK"],[1502,"TEFENNI"],[1601,"GEMLIK"],[1602,"HARMANCIK"],[1603,"INEGOL"],[1604,"KELES"],[1605,"M.KEMALPASA"], _
[1606,"YENISEHIR"],[1701,"BIGA"],[1702,"BOZCAADA"],[1703,"GOKCEADA"],[1704,"LAPSEKI"],[1705,"EZINE"],[1801,"CERKES"],[1802,"ILGAZ"],[1803,"YAPRAKLI"], _
[2001,"ACIPAYAM"],[2002,"BABADAG"],[2003,"CAMELI"],[2004,"CARDAK"],[2005,"CIVRIL"],[2006,"GUNEY"],[2007,"KALE-DENIZLI"],[2008,"KARAHAYIT"],[2009,"PAMUKKALE"], _
[2010,"SARAYKOY"],[2011,"TAVAS"],[8101,"AKCAKOCA"],[2201,"IPSALA"],[2202,"UZUNKOPRU"],[2501,"HINIS"],[2502,"OLTU"],[2601,"ALPU"],[2602,"CIFTELER"],[2603,"GUNYUZU"], _
[2604,"MIHALICCIK"],[2605,"SARICAKAYA"],[2606,"SIVRIHISAR"],[2607,"SEYITGAZI"],[2801,"SEBINKARAHISAR"],[3001,"CUKURCA"],[3002,"SEMDINLI"],[3101,"ISKENDERUN"], _
[7601,"ARALIK"],[3201,"AKSU"],[3202,"EGIRDIR"],[3203,"SENIRKENT"],[3204,"ULUBORLU"],[3205,"YALVAC"],[3401,"BAKIRKOY"],[3402,"BESIKTAS"],[3403,"BEYKOZ"], _
[3404,"BUYUKADA"],[3405,"CATALCA"],[3406,"EYUP"],[3407,"FATIH"],[3408,"HADIMKOY"],[3409,"KADIKOY"],[3410,"PENDIK"],[3411,"SARIYER"],[3412,"SILIVRI"],[3413,"SILE"], _
[3414,"SISLI"],[3415,"TUZLA"],[3416,"UMRANIYE"],[3417,"USKUDAR"],[3501,"ALIAGA"],[3502,"BERGAMA"],[3503,"BORNOVA"],[3504,"CESME"],[3505,"CIGLI"],[3506,"DIKILI"], _
[3507,"FOCA"],[3508,"GAZIEMIR"],[3509,"KEMALPASA"],[3510,"KONAK"],[3511,"MENEMEN"],[3512,"ODEMIS"],[3513,"SEFERIHISAR"],[3514,"SELCUK"],[3515,"TORBALI"],[4601,"AFSIN"], _
[4602,"ELBISTAN"],[7001,"ERMENEK"],[3601,"ARPACAY"],[3602,"KAGIZMAN"],[3603,"SARIKAMIS"],[3701,"INEBOLU"],[3801,"BUNYAN"],[3802,"DEVELI"],[3803,"PINARBASI"], _
[3804,"SARIZ"],[3805,"TOMARZA"],[3806,"YESILHISAR"],[7101,"KARAKECILI"],[7102,"KESKIN"],[3901,"DEMIRKOY"],[3902,"LULEBURGAZ"],[4001,"CICEKDAGI"],[4002,"MUCUR"], _
[4101,"GEBZE"],[4102,"GOLCUK"],[4103,"KANDIRA"],[4104,"KARTEPE"],[4201,"AKSEHIR"],[4202,"BEYSEHIR"],[4203,"CUMRA"],[4204,"EREGLI-KONYA"],[4205,"KARAPINAR"], _
[4206,"KULU"],[4207,"SEYDISEHIR"],[4301,"ALTINTAS"],[4302,"DOMANIC"],[4303,"DUMLUPINAR"],[4304,"EMET"],[4305,"GEDIZ"],[4306,"SAPHANE"],[4307,"SIMAV"], _
[4308,"TAVSANLI"],[4401,"AKCADAG"],[4402,"DOGANSEHIR"],[4403,"KALE-MALATYA"],[4501,"AKHISAR"],[4502,"ALASEHIR"],[4503,"DEMIRCI"],[4504,"KOPRUBASI"],[4505,"SALIHLI"], _
[4506,"SOMA"],[4507,"TURGUTLU"],[4701,"KIZILTEPE"],[4702,"MAZIDAGI"],[4703,"NUSAYBIN"],[3301,"ANAMUR"],[3302,"SILIFKE"],[4801,"BODRUM"],[4802,"DALAMAN"], _
[4803,"DATCA"],[4804,"FETHIYE"],[4805,"KOYCEGIZ"],[4806,"MARMARIS"],[4807,"MILAS"],[4808,"YATAGAN"],[4901,"MALAZGIRT"],[5001,"AVANOS"],[5002,"DERINKUYU"], _
[5003,"KOZAKLI"],[5004,"URGUP"],[5201,"GOLKOY"],[5202,"UNYE"],[5301,"ARDESEN"],[5401,"GEYVE"],[5402,"HENDEK"],[5403,"KARASU"],[5501,"BAFRA"],[5601,"BAYKAN"], _
[5602,"ERUH"],[5801,"DIVRIGI"],[5802,"GEMEREK"],[5803,"GURUN"],[5804,"KANGAL"],[5805,"SARKISLA"],[6301,"BIRECIK"],[6302,"CEYLANPINAR"],[6303,"SIVEREK"], _
[6304,"VIRANSEHIR"],[5901,"CERKEZKOY"],[5902,"CORLU"],[5903,"MALKARA"],[6001,"BASCIFTLIK"],[6002,"ERBAA"],[6003,"NIKSAR"],[6004,"TURHAL"],[6005,"YESILYURT"], _
[6006,"ZILE"],[6101,"MACKA"],[6102,"OF"],[6401,"BANAZ"],[6402,"ESME"],[6403,"SIVASLI"],[6404,"ULUBEY-USAK"],[6501,"MURADIYE"],[7701,"CINARCIK"],[6601,"AKDAGMADENI"], _
[6602,"BOGAZLIYAN"],[6603,"SORGUN"],[6701,"ALAPLI"],[6702,"CAYCUMA"],[6703,"DEVREK"],[6704,"EREGLI-KARADENIZ"]]

Dim $hadise[28][2] = [[27,27],[0,"HAVA AÇIK"],[1,"SICAK"],[2,"SOĞUK"],[3,"AZ BULUTLU"],[4,"PARÇALI BULUTLU"],[5,"ÇOK BULUTLU"],[6,"KURU DUMAN"],[7,"PUSLU"],[8,"DONAN SİSLİ İNCE SİS (HAZE)"], _
[10,"YAĞMURLU"],[9,"HAFİF YAĞMURLU"],[11,"KUVVETLİ YAĞMURLU"],[13,"SAĞANAK YAĞIŞLI"],[12,"SAĞANAK HAFİF YAĞMURLU HAFİF SAĞANAK YAĞIŞLI"],[14,"KUVVETLİ SAĞANAK YAĞIŞLI"],[15,"HAFİF KAR YAĞIŞLI HAFİF KARLI"], _
[16,"KAR YAĞIŞLI"],[17,"YOĞUN KAR YAĞIŞLI"],[18,"YER YER SAĞANAK YAĞIŞLI"],[19,"DOLU"],[20,"GÖKGÜRÜLTÜLÜ SAĞANAK YAĞIŞLI"],[21,"KARLA KARIŞIK YAĞMURLU"], _
[22,"RÜZGARLI KUVVETLİ RÜZGAR"],[23,"TOZ VEYA KUM FIRTINASI"],[24,"GÜNEYLİ KUVVETLİ RÜZGAR"],[25,"KUZEYLİ KUVVETLİ RÜZGAR"],[26,""]]
#endregion

Func _YerOku($kod)
Local $text, $i, $t, $return[2]
if Not IsNumber($kod) then Return -1
for $i = 1 to $sehirler[0][0]
if Number($sehirler[$i][0]) = Number($kod) Then
$t = $i
ExitLoop
EndIf
Next
$return[0] = BinaryToString(InetRead('http://www.dmi.gov.tr/tahmin/il-ve-ilceler.aspx?m='&$sehirler[$t][1],1))
if $return[0] = "" Then Return -1
if StringInStr(_AraGetir($return[0],"<title>","</title>"),"istenen merkez bulunamad") <> 0 then Return -1
$return[1] = $t
Return $return
EndFunc

Func _CografiGetir($text)
;tCografi: 0: Sayi, 1: Yukseklik, 2: Enlem, 3: Boylam, 4: Gündoğumu, 5: Günbatımı, 6: Bölge, 7: Havza
Local $tCografi[8]
$tCografi[0] = 7
$tCografi[1] = _AyirGetir($text,'pMerkezYuksekligi">','</p>')
$tCografi[2] = _AyirGetir($text,'pMerkezEnlem">','</p>')
$tCografi[3] = _AyirGetir($text,'pMerkezBoylam">','</p>')
$tCografi[4] = _AyirGetir($text,'pMerkezGD">','</p>')
$tCografi[5] = _AyirGetir($text,'pMerkezGB">','</p>')
$tCografi[6] = _KelimeDuzelt(_AyirGetir($text,'pMerkezBolge">','</p>'))
If $tCografi[6] = "Güneydoğu Anadolu" Then $tCografi[6] = "G. Anadolu"
If $tCografi[6] = "Doğu Anadolu" Then $tCografi[6] = "D. Anadolu"
$tCografi[7] = "-"
Return $tCografi
EndFunc

Func _XGunlukGetir($text,$x = 5)
;t5Gunluk[a][b] a= Gunler b= 0: Değişken Sayısı, 1: Tarih, 2: Minimum Sıcaklık, 3: Maksimum Sıcaklık, 4: Durum, 5: Minimum Nem, 6: Maksimum Nem, 7: Rüzgar Yönü,
; 8: Rüzgar Hızı, 9: Hava Durum Resim No, 10: Rüzgar Yön Resim No
Local $t5Gunluk[$x][11], $a, $i
for $i = 1 to $x
if $i = 1 or $i = 3 or $i = 5 Then
$t5Gunluk[$i-1][0] = 10
$t5Gunluk[$i-1][1] = _AraGetir($text,'thmGun'&$i&'" class="arkaTrh">','</th>')
$t5Gunluk[$i-1][2] = _AraGetir($text,'thmMin'&$i&'" class="minS">','</td>')
$t5Gunluk[$i-1][3] = _AraGetir($text,'thmMax'&$i&'" class="maxS">','</td>')
$t5Gunluk[$i-1][4] = _KelimeDuzelt(_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/'))
$t5Gunluk[$i-1][5] = _AraGetir($text,'thmNemMin'&$i&'" class="minN">','</td>')
$t5Gunluk[$i-1][6] = _AraGetir($text,'thmNemMax'&$i&'" class="maxN">','</td>')
$t5Gunluk[$i-1][7] = _AyirGetir($text,'thmRuzgarYon'&$i&'">','" title="','"')
$t5Gunluk[$i-1][8] = _AraGetir($text,'thmRuzgarHiz'&$i&'">','</td>')
for $a = 1 to $hadise[0][0]
if StringInStr($hadise[$a][1],_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/')) Then
$t5Gunluk[$i-1][9] = $hadise[$a][0]
ExitLoop
EndIf
Next
$t5Gunluk[$i-1][10] = _AyirGetir($text,'thmRuzgarYon'&$i&'">','.gif" alt="','/')
Else
if $i = 2 Then
$t5Gunluk[$i-1][0] = $x-1
Else
$t5Gunluk[$i-1][0] = 10
EndIf
$t5Gunluk[$i-1][1] = _AraGetir($text,'thmGun'&$i&'" class="arkaAlterTrh">','</th>')
$t5Gunluk[$i-1][2] = _AraGetir($text,'thmMin'&$i&'" class="arkaAlter minS">','</td>')
$t5Gunluk[$i-1][3] = _AraGetir($text,'thmMax'&$i&'" class="arkaAlter maxS">','</td>')
$t5Gunluk[$i-1][4] = _KelimeDuzelt(_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/'))
$t5Gunluk[$i-1][5] = _AraGetir($text,'thmNemMin'&$i&'" class="arkaAlter minN">','</td>')
$t5Gunluk[$i-1][6] = _AraGetir($text,'thmNemMax'&$i&'" class="arkaAlter maxN">','</td>')
$t5Gunluk[$i-1][7] = _AyirGetir($text,'thmRuzgarYon'&$i&'" class="arkaAlter">','" title="','"')
$t5Gunluk[$i-1][8] = _AraGetir($text,'thmRuzgarHiz'&$i&'" class="arkaAlter">','</td>')
for $a = 1 to $hadise[0][0]
if StringInStr($hadise[$a][1],_AraGetir($text,'imgHadise'&$i&'" title="','" src="../FILES/imgIcon/')) Then
$t5Gunluk[$i-1][9] = $hadise[$a][0]
ExitLoop
EndIf
Next
$t5Gunluk[$i-1][10] = _AyirGetir($text,'thmRuzgarYon'&$i&'" class="arkaAlter">','.gif" alt="','/')
EndIf
Next
Return $t5Gunluk
EndFunc

Func _SonDurumGetir($text)
;SonDurum: 0: Sayi, 1: Hava Durumu, 2: Sıcaklık, 3: Nem, 4: Basınç, 5: Görüş Mesafesi, 6: Rüzgar Yönü, 7: Rüzgar Hızı, 8: Son Durum Resim No, 9: Rüzgar Yön Resim No
Local $tSonDurum[10], $local
$tSonDurum[0] = 9
$local = _AyirGetir($text,'<td rowspan="2"><img src="','" />','"')
$tSonDurum[1] = _KelimeDuzelt($local)
$nText = _AraGetir($text,'class="sond_zaman">','</tr>')
$donusler = _AyirGetir($nText,"<td>","</em>",">",1)
$tSonDurum[2] = $donusler[0]
$tSonDurum[3] = $donusler[1]
$tSonDurum[4] = $donusler[3]
$tSonDurum[5] = $donusler[4]
$tSonDurum[6] = _AyirGetir($nText,'imgIcon/ruzgar/','" />','"')
$tSonDurum[7] = $donusler[2]
$tSonDurum[8] = ""
for $a = 1 to $hadise[0][0]
if StringInStr($hadise[$a][1],$local) Then
if (Number(StringReplace(_AyirGetir($text,'pMerkezGB">','</p>'),":","")) < Number(@HOUR&@MIN)) or (Number(StringReplace(_AyirGetir($text,'pMerkezGD">','</p>'),":","")) > Number(@HOUR&@MIN)) Then
$tSonDurum[8] = "1" & $hadise[$a][0]
; $tSonDurum[8] = Random(0,1,1) & $hadise[$a][0]
Else
$tSonDurum[8] = "0" & $hadise[$a][0]
; $tSonDurum[8] = Random(0,1,1) & $hadise[$a][0]
EndIf
ExitLoop
EndIf
Next
if StringTrimLeft($tSonDurum[8],1) = "" or StringTrimLeft($tSonDurum[8],1) = "..." Then
if (Number(StringReplace(_AyirGetir($text,'pMerkezGB">','</p>'),":","")) < Number(@HOUR&@MIN)) or (Number(StringReplace(_AyirGetir($text,'pMerkezGD">','</p>'),":","")) > Number(@HOUR&@MIN)) Then
$tSonDurum[8] = "1" & $hadise[27][0]
; $tSonDurum[8] = Random(0,1,1) & $hadise[27][0]
Else
$tSonDurum[8] = "0" & $hadise[27][0]
;$tSonDurum[8] = Random(0,1,1) & $hadise[27][0]
EndIf
EndIf
$tSonDurum[9] = _AyirGetir($text,'imgIcon/ruzgar/','.gif" alt',"/")
Return $tSonDurum
EndFunc[/codebox]

Link to comment
Share on other sites

  • 5 years yıl...
  • 4 hafta sonra ...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...