17-12-2017, 02:41 AM
17-12-2017, 05:37 PM
وعليكم السلام ورحمة الله وبركاته
افترض انك تستقبل الstring الاتى من webbrowse
قم باستخدام الطريقة التالية لاضافتها الى ListView
افترض انك تستقبل الstring الاتى من webbrowse
PHP كود :
"Ahmed Shoulah","Mohamed Shoulah","Delphi Arab","Coder Programmer"
قم باستخدام الطريقة التالية لاضافتها الى ListView
PHP كود :
var
MyString : string;
I : Integer;
LItem: TListViewItem;
begin
ListView1.BeginUpdate;
try
MyString := '"Ahmed Shoulah","Mohamed Shoulah","Delphi Arab","Coder Programmer"';
I := 0;
while (length(MyString) > 0) do
begin
if MyString[i] = ',' then Delete(MyString, 1, I);
if MyString[i] = '"' then
begin
if Copy(MyString, 0, I -1) <> '' then
begin
LItem := ListView1.Items.Add;
LItem.Text := Copy(MyString, 0, I -1);
end;
Delete(MyString, 1, I);
I := 0;
end;
Inc(I);
end;
finally
ListView1.EndUpdate;
end;
end;
17-12-2017, 08:34 PM
شكرا لك لكن ماهي طريقة استخراج النص من الويب برورس واضافتها الى MyString
17-12-2017, 09:16 PM
هل حاولت؟
لو ممكن بعد اذنك ترفق محاولاتك
لو ممكن بعد اذنك ترفق محاولاتك
17-12-2017, 10:25 PM
function Parser(Buffer,Start,Finish
tring)
tring;
var PosStart, PosFinish:Integer;
begin
PosStart:=Pos(Start, Buffer)+ Length(Start);
PosFinish:=Posex(Finish, Buffer,PosStart);
Result := Copy(Buffer, PosStart, PosFinish - PosStart);
end;
function GetHTML2(WebBrowser:TWebBrowser)
tring;
begin
Result:=(WebBrowser.Document AS IHTMLDocument3).documentElement.outerHTML;
end;
حاولت استخدام فانكشن
procedure TForm3.WebBrowser1DocumentComplete(ASender: TObject;
const pDisp: IDispatch; const URL: OleVariant);
var
s,text
tring;
item:TListItem;
begin
text:=GetHTML2(Webbrowser1);
s:=text;
item:=ListView1.Items.Add;
item.Caption:=Parser(s,'"','"');
end;
tring)
tring;var PosStart, PosFinish:Integer;
begin
PosStart:=Pos(Start, Buffer)+ Length(Start);
PosFinish:=Posex(Finish, Buffer,PosStart);
Result := Copy(Buffer, PosStart, PosFinish - PosStart);
end;
function GetHTML2(WebBrowser:TWebBrowser)
tring;begin
Result:=(WebBrowser.Document AS IHTMLDocument3).documentElement.outerHTML;
end;
حاولت استخدام فانكشن
procedure TForm3.WebBrowser1DocumentComplete(ASender: TObject;
const pDisp: IDispatch; const URL: OleVariant);
var
s,text
tring;item:TListItem;
begin
text:=GetHTML2(Webbrowser1);
s:=text;
item:=ListView1.Items.Add;
item.Caption:=Parser(s,'"','"');
end;
18-12-2017, 12:14 AM
جرب هذا الكود سوف يخرج لك الText بعد فتح الصفحة "Documenet.body.innerText"
PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('https://www.google.com.eg/');
end;
procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
const pDisp: IDispatch; const URL: OleVariant);
var
// You Should add mshtml to uses
Documenet : IHtmlDocument2;
begin
Documenet := WebBrowser1.Document as IHTMLDocument2;
ShowMessage(Trim(Documenet.body.innerText));
end;
18-12-2017, 04:35 PM
شكرا استفسار بسيط
لماذا قمت بي اضافة هذا السطر
ListView1.BeginUpdate;
لماذا قمت بي اضافة هذا السطر
ListView1.BeginUpdate;
18-12-2017, 05:13 PM
حسب وثائق الDelphi
من اجل الحصول على افضل اداء "To achieve the best performance use BeginUpdate and EndUpdate"
من اجل الحصول على افضل اداء "To achieve the best performance use BeginUpdate and EndUpdate"
18-12-2017, 08:05 PM
الدلفي ضعيف في هته الامور ، عليك ب python او node.js احسن بطثير