Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.22;
Скачать: CL | DM;

Вниз

Народ, как с помощью TWebBrowser (или чего другого) заполнить поля в HTML   Найти похожие ветки 

 
Димка-1200   (2002-02-11 10:03) [0]

Есть HTMLина, которую я открываю с сайта, нужно заполнить поля в формочке и нажать кнопку сабмит. Как это правильно реализовать ?
Может с помощью DHTML поменять инфу в VALUE ?
Есть другие идеи ?
PS: Страницу нельзя сохранять на диск и там править, т.к. на сайте сечется referer :(


 
OGR ©   (2002-02-11 14:43) [1]

Так заполнять форму типа TEXTAREA из Memo1

iColl2:=iDoc.All.Tags("TEXTAREA") as IHTMLElementCollection;
for i:=0 to iColl2.length-1 do
with (iColl2.item(i,varEmpty) as IHTMLTextAreaElement) do
if name="имя формы textarea" then
begin
(iColl.item(i,varEmpty) as IHTMLElement).scrollIntoView(varEmpty);
value:=Memo1.Lines.Text;


А нажимать кнопку сабмит так:

var IColl : IHTMLElementCollection;
i : integer;
begin
iColl:=(WebBrowser1.Document as IHTMLDocument2).All.tags("INPUT") as IHTMLElementCollection;
for i:=0 to iColl.length-1 do
if (iColl.item(i,varEmpty) as IHTMLInputElement).name="Sbm_upd" then (iColl.item(i,varEmpty) as IHTMLElement).click;
end;


P.S. Чего накручивать собралсся? $-)


 
Лёша ©   (2002-02-11 15:42) [2]

function StringToVarArray(const Value: string): OleVariant;
var
PData: Pointer;
Size: Integer;
begin
Size := Length(Value);
Result := VarArrayCreate([0, Size-1], varByte);
PData := VarArrayLock(Result);
try
Move(Pointer(Value)^, PData^, Size);
finally
VarArrayUnlock(Result);
end;
end;

function Encode(const S: string): string;
var
I: Integer;
Hex: string;
begin
for I := 1 to Length(S) do

case S[i] of
" ": result := Result + "+";
"A".."Z", "a".."z", "*", "@", ".", "_", "-",
"0".."9", "$", "!", """", "(", ")":
result := Result + s[i];
else
begin
Hex := IntToHex(ord(S[i]), 2);
if Length(Hex) = 2 then Result := Result + "%" + Hex else
Result := Result + "%0" + hex;
end;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
url, Flags, TargetFrame, Postdata, Headers: Olevariant;
begin
Url := "https://lc1.law5.hotmail.passport.com/cgi-bin/dologin";
TargetFrame:=0;
Flags:=NavNoHistory;
headers := StringtoVarArray("Content-Type:application/x-www-form-urlencoded"#13#10);
Postdata := StringToVarArray(Encode("login=<MyUsername>&passwd=<MyPassword>"));
WebBrowser1.Navigate2(URL, Flags, TargetFrame, PostData, Headers);
end;


P.S. Не только накручивать, но и гадить.


 
Димка-1200   (2002-02-12 01:42) [3]

да не, не накручивать :)
СМСки хочу отправлять не с сайта, а из проги.
С сокетами лень было ковыряться.
Спасибо за советы !



Страницы: 1 вся ветка

Текущий архив: 2002.04.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
3-69686
Merle Corey
2002-03-29 20:46
2002.04.22
Як сконфигурировать DCOM?


3-69658
3asys
2002-04-02 12:35
2002.04.22
DBTreeView


1-69799
Dimedrol
2002-04-09 10:32
2002.04.22
Своя внутренняя переключалка клавиатуры...


14-69974
lipskiy
2002-03-13 04:10
2002.04.22
И когда это вы все всё успеваете?


1-69845
VEG
2002-04-11 09:32
2002.04.22
Потоки