Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Chatbox in WebBrowser anzeigen (https://www.delphipraxis.net/139430-chatbox-webbrowser-anzeigen.html)

Paul0703 28. Aug 2009 16:20


Chatbox in WebBrowser anzeigen
 
Hallo!
Der Titel ist vielleicht etwas schlecht gewählt, aber wusste nicht, wie ich es besser ausdrücken kann^^

Also ich möchte im Webbrowser die Chatbox von http://forum.quicklink.me/chat.php anzeigen.
Also nur die Chatbox ohne alles darum herum.
Also nur die Nachrichten, die die User schreiben, mehr nicht.
Es wäre auch ok, die nachrichten der user aus dem Quelltext auszulesen und in einem Memo oder ähnlichem anzuzeigen.
Mein Ziel ist halt, ein kleines Tool für den Chat zu schreiben, ohne dass man auf die Seite muss.

Freue mich auf eure Antworten 8)

MfG

Matze 28. Aug 2009 16:29

Re: Chatbox in WebBrowser anzeigen
 
Hallo,

ich bezweifel stark, dass du das machen darfst, da du so u.a. Werbung umgehen würdest. Dadurch finanziert sich der Betreiber jedoch zum Teil.

Grüße, Matze

toms 28. Aug 2009 18:03

Re: Chatbox in WebBrowser anzeigen
 
Zitat:

Zitat von Matze
ich bezweifel stark, dass du das machen darfst, da du so u.a. Werbung umgehen würdest.

Dann wäre aber auch jeder Werbeblocker nicht legal..

Oldy 28. Aug 2009 19:21

Re: Chatbox in WebBrowser anzeigen
 
*gähn*
na du liest den quelltext ein (zB idhttp.get mit den indys) und löscht mit delete und pos alels was du nich brauchst..
das was du brauchst is so wie ich das seh nur der div tag <div id="advanced-wrap"> bis zum ende.
N paar sachen machst du auch noch dazu wegmachen:
<div class="custom-breadcrumbs">


Der grund dafür, dass du so früh ansetzt, sind die Codes. Javascript und CSS, ohne das ist5 das ja nich wirkungsvoll :)

mfg
oldy

PS: bei Html fragen einfach mal bei SelfHtml nachschaun

Paul0703 28. Aug 2009 19:25

Re: Chatbox in WebBrowser anzeigen
 
Ich bin da angemeldet, ich frage den Admin auch vorher, wenn das Tool fertig ist.Es wurden schon andere Tools für die Seite gemacht.
Und in dem Chat kommt auch keine Werbung glaube ich, nur auf den anderen Seiten :wink:
Aber erstmal muss ich es ja hinbekommen :gruebel:

@oldy: Wäre nett, wenn du das noch ein bisschen genauer erklären könntest!
Ich habe mir den Quelltext ja schon angesehen, aber wie ich das mit idhttp, delete und pos mache, weiß ich nicht, bin da noch nicht so ganz drin :stupid:

Matze 28. Aug 2009 19:46

Re: Chatbox in WebBrowser anzeigen
 
Wenn der Admin an so einem Tool interessiert ist, dann frage ihn doch mal, ob er dir die Einträge als XML zur Verfügung stellt. Sowas ist schnell programmiert, sauber gelöst und du kannst XML leicht parsen.
Sonst ändert sich am HTML-Code eine Kleinigkeit und schon zeigt dein Programm fehlerhafte Einträge an.

Paul0703 28. Aug 2009 19:58

Re: Chatbox in WebBrowser anzeigen
 
Der Admin hat genug zu tun :mrgreen:
Ich denke, ich mache es erstmal mit dem Quellcode, ich möchte ja auch was dazulernen in dieser Richtung.
Falls es irgendwie nicht geht, kann ich den Admin ja fragen, aber da gibt es zur Zeit andere Prioritäten :wink:
Trotzdem, die Idee ist gut!

PS:
Ich habe es jetzt sogar selber hinbekommen :gruebel:
Aber es gibt noch das problem, dass solche bestimmten Zeichen, die wahrscheinlich smilies sind, halt nur als wirre buchstaben angezeigt werden.
Kann ich das vielleicht mit StringReplace machen??

Hier meine Lösung:

Delphi-Quellcode:
function FindInString(Text, SearchFrom, SearchTo: string; FirstOnly: Boolean; var Return: TArrayofstring): Boolean;
var
  i: Cardinal;
  FoundString: string;
begin
  Result := False;
  SetLength(Return, 0);
  i := Pos(SearchFrom, Text);
  while i > 0 do
  begin
    Result := True;
    i := i + Length(SearchFrom);
    FoundString := Copy(Text, i, PosEx(SearchTo,Text,i) - i);
    SetLength(Return, length(Return) + 1);
    Return[high(Return)] := FoundString;
    Delete(Text, 1, i);
    i := Pos(SearchFrom, Text);
    if FirstOnly then Break;
  end;
end;
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var HTMLCode: String;
    TextMessage: TArrayOfString;
    User: TArrayOfString;
begin
  HTMLCode := idHTTP1.Get('http://forum.quicklink.me/chat.php');
  FindInString(HTMLCode, 'class="content" style="min-height: 0px;">', '</div></div><dl', False, TextMessage);
  FindInString(HTMLCode, 'class="username-coloured">', '</a></dt></dl><span', False, User);
  Memo1.Clear;
  Memo1.Lines.Add(User[0] + ': ' + TextMessage[0]);
  Memo1.Lines.Add(User[1] + ': ' + TextMessage[1]);
  Memo1.Lines.Add(User[2] + ': ' + TextMessage[2]);
  Memo1.Lines.Add(User[3] + ': ' + TextMessage[3]);
  Memo1.Lines.Add(User[4] + ': ' + TextMessage[4]);
  Memo1.Lines.Add(User[5] + ': ' + TextMessage[5]);
  Memo1.Lines.Add(User[6] + ': ' + TextMessage[6]);
  Memo1.Lines.Add(User[7] + ': ' + TextMessage[7]);
  Memo1.Lines.Add(User[8] + ': ' + TextMessage[8]);
  Memo1.Lines.Add(User[9] + ': ' + TextMessage[9]);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz