html parse ile ilgili

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
barutali
Üye
Mesajlar: 297
Kayıt: 02 Tem 2007 02:30

html parse ile ilgili

Mesaj gönderen barutali »

Kod: Tümünü seç

<ul class="vb_topics">
<li><a href="http://siteadresi/showthread.php?t=85573" title="Merhaba arkadaşlar
Lycos gibisinden sadece ns leri yönlendirip kendi domainimi kullanabile">Acil Asp Host Lazım.</a> <span class="vb_last_post">(gönderen_kişi  04:43 PM)</span></li>

şeklinde bi sayfam var burdaki örneğin

link kısmı
http://siteadresi/showthread.php?t=85573

konu kısmı
Acil Asp Host Lazım

gönderen kısmı

(gönderen_kişi 04:43 PM)

sitedeki php sayfasına bağlanıp nasıl parseleyebilirim bunları alıp Listview de sıralanmasını nasıl sağlarım acaba ?

sitede aramalar yaptım fakat istediğim bilgiye ulaşamadım.
[/code]
amatör küme programcı :D
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Tam sana göre bir örnek

bkz.
viewtopic.php?t=18498
Resim
Resim ....Resim
Kullanıcı avatarı
barutali
Üye
Mesajlar: 297
Kayıt: 02 Tem 2007 02:30

Mesaj gönderen barutali »

evet hocam indirip bakmıştım. Ama bu işte yeni olduğumdan tam olarak anlayamamıştım kodları bir daha bakmaktan zarar çıkmaz. Teşekkür ederim ilginiz için.
amatör küme programcı :D
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Mesaj gönderen Battosai »

Herhangi bir htmlparser komponenti veya indy ile de olabilir...istediğin adrese post veya get methodlarıyla yada sade şekilde dönen string değerleri bir widestring değişkene at...sonra listview e değer aktarmak için dönen değerlerinde formatlı olması lazım...mesela a;b;c gibi araya noktalı virgül olabilir...sonra bir döngü ile listview e sıralması kalır...

//aşağıdaki kodu kendi programım için yapmıştım....
//burdaki httpsend fonksiyonu yerine kendi htmlparse kodunu yaz.

Kod: Tümünü seç

procedure TForm1.Listele1Click(Sender: TObject);
var
str:WideString;
k,j,i:integer;
StrHTTP,prog:string;
begin
try
ListView1.Clear;
StrHTTP:='https://abc.com/listele.php' //site ismi sallamadır.
str:=trim(HTTPSendS(StrHTTP+'?sender=user&komut=list'));
if str='03' then //03 kodu post sonrası dönen  değer
begin
MessageBox(Handle,'Kayıt Bulunamadı...   ','Bilgi',MB_OK+MB_ICONINFORMATION);
exit;
end;
    ListView1.Items.Add;
    j:=0;
    k:=length(str);
for i:=0 to length(str) do
  begin
   Application.ProcessMessages;
    if (str[i]='$') and(i<>k)  then
        begin
        ListView1.Items.Add;
        ListView1.Items[ListView1.Items.Count-1].Caption:='';
        j:=j+1;
        end;
   if (str[i]='#')and (str[i]<>'$') then
    begin
      prog:=trim(copy(str,j+1,i-j-1));
      if (prog<>'[0]') or (prog<>'[1]') then
      begin
         ListView1.Items[ListView1.Items.Count-1].SubItems.Add(prog);
       if prog='[0]'  then
        ListView1.Items[ListView1.Items.Count-1].ImageIndex:=0;
        if prog='[1]'  then
         ListView1.Items[ListView1.Items.Count-1].ImageIndex:=1;
        end;
       j:=i;
       end;
   end;
   except;
    MessageBox(Handle,'Veriler Alınamadı.Bağlantıda Sıkıntı olabilir...','N oluyor laynn',MB_ICONERROR);
    end;

end;
//Kodları bir fikir verir diye yolladım aynısını kullanabilirsin fakat çözmen lazım kodu biraz ben aralara # ve satır sonlandırmak içinde $ karakteri koydum mantığı anladıktan sonra yaparsın zaten....
Kullanıcı avatarı
barutali
Üye
Mesajlar: 297
Kayıt: 02 Tem 2007 02:30

Mesaj gönderen barutali »

saol hocam bunu bi deneyeyim teşekkür ederim ilgin için
amatör küme programcı :D
Cevapla