Jump to content
TNC-TR
blackman12

_Havadurumu Udf

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]

Share this post


Link to post
Share on other sites
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]

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    No registered users viewing this page.

×