Arkaadaşlar rapit linkleri ölmüş
acaba başka bir yere programı koyabilirmisiniz?
Ntv'nin Döviz kurlarını almak...
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Ntv'nin Döviz kurlarını almak...
Ahmet DENİZ
Re: Ntv'nin Döviz kurlarını almak...
Bir tane hazırladım. Buyrun

http://rapidshare.com/files/172475351/H ... VMSNBC.rar
Parse işlemini kavramak için en basit yaklaşım, tüm bloğu ardışık karakterler gibi düşünmek ve ihtiyaç olunan tekil/benzersiz noktaları tespit ederek adım adım silerek asıl veriye yaklaşmak. Bir ipe dizili boncuk taneleri gibi düşünün. (örnekteki ARA değişkeni aranarak bulunur, Gelen katarda bu değişkendeki veri de dahil olmak üzere ondan önce gelen tüm veri silinir.)

http://rapidshare.com/files/172475351/H ... VMSNBC.rar
Parse işlemini kavramak için en basit yaklaşım, tüm bloğu ardışık karakterler gibi düşünmek ve ihtiyaç olunan tekil/benzersiz noktaları tespit ederek adım adım silerek asıl veriye yaklaşmak. Bir ipe dizili boncuk taneleri gibi düşünün. (örnekteki ARA değişkeni aranarak bulunur, Gelen katarda bu değişkendeki veri de dahil olmak üzere ondan önce gelen tüm veri silinir.)
Kod: Tümünü seç
Type tHava_ntvmsnbc = Record
ta1, ta2, ta3,
is1, is2, is3,
an1, an2, an3,
iz1, iz2, iz3 : String;
End;
procedure TForm1.Button1Click(Sender: TObject);
Const
NTVHava = 'http://www.ntvmsnbc.com/inc/cover_box_weather.asp';
Var
Gelen, Ara : String;
Hava : tHava_ntvmsnbc;
begin
Try
Gelen := Trim( IdHttp1.Get( NTVHava ) );
Except
Exit;
End;
ZeroMemory( @Hava, SizeOf(Hava) );
if Gelen <> '' then begin
// üç gün ( tarihler )
Ara := 'nowrap><b>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.ta1 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.ta2 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.ta3 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
// İstanbul hava durumu
Ara := '<b>İSTANBUL</b>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Ara := 'align=''absmiddle''>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.is1 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.is2 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.is3 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
// Ankara hava durumu
Ara := '<b>ANKARA</b>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Ara := 'align=''absmiddle''>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.an1 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.an2 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.an3 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
// İzmir hava durumu
Ara := '<b>İZMİR</b>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Ara := 'align=''absmiddle''>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.iz1 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.iz2 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Hava.iz3 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
end;
With ListView1.Items.Add do begin
Caption := 'Tarihler' ;
SubItems.Add( Hava.ta1 );
SubItems.Add( Hava.ta2 );
SubItems.Add( Hava.ta3 );
end;
With ListView1.Items.Add do begin
Caption := 'Ankara';
SubItems.Add( Hava.an1 );
SubItems.Add( Hava.an2 );
SubItems.Add( Hava.an3 );
end;
With ListView1.Items.Add do begin
Caption := 'İstanbul';
SubItems.Add( Hava.iz1 );
SubItems.Add( Hava.iz2 );
SubItems.Add( Hava.iz3 );
end;
With ListView1.Items.Add do begin
Caption := 'İzmir';
SubItems.Add( Hava.is1 );
SubItems.Add( Hava.is2 );
SubItems.Add( Hava.is3 );
end;
end;
Kod: Tümünü seç
Type tDoviz_ntvmsnbc = Record
imkb100,
imkb100fark,
imkb30,
imkb30fark,
USD,
USDfark,
EURO,
EUROfark : String;
End;
procedure TForm1.Button2Click(Sender: TObject);
Const
NTVMSNBC = 'http://www.ntvmsnbc.com.tr';
Var
Gelen, Ara : String;
Doviz : tDoviz_ntvmsnbc;
begin
Try
Gelen := Trim( IdHttp1.Get( NTVMSNBC ) );
Except
Exit;
End;
ZeroMemory( @Doviz, SizeOf(Doviz) );
if Gelen <> '' then begin
// PARA PİYASA VERİLERİ
Ara := 'PARA PİYASA VERİLERİ';
Ara := '<p><strong>İMKB 100</strong></p><p>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.imkb100 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '>%';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.imkb100fark := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '<strong>İMKB 30</strong></p><p>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.imkb30 := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '>%';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.imkb30fark := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '<strong>USD</strong></p><p>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.USD := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '>%';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.USDfark := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '<strong>EURO</strong></p><p>';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.EURO := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
Ara := '>%';
Delete( Gelen, 1, Pos(Ara, gelen) + length(Ara)-1 );
Doviz.EUROfark := Trim( Copy(Gelen, 1, Pos('<', Gelen)-1) );
end;
With ListView2.Items.Add do begin
Caption := 'IMKB 100' ;
SubItems.Add( Doviz.imkb100 );
SubItems.Add( Doviz.imkb100fark );
end;
With ListView2.Items.Add do begin
Caption := 'IMKB 30' ;
SubItems.Add( Doviz.imkb30 );
SubItems.Add( Doviz.imkb30fark );
end;
With ListView2.Items.Add do begin
Caption := 'USD' ;
SubItems.Add( Doviz.USD );
SubItems.Add( Doviz.USDfark );
end;
With ListView2.Items.Add do begin
Caption := 'EURO' ;
SubItems.Add( Doviz.EURO );
SubItems.Add( Doviz.EUROfark );
end;
end;