Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];

Вниз

Народ, как с помощью 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.077 c
7-70034
Андрей Татуков
2002-01-25 17:05
2002.04.22
как определить МОДЕЛЬ МОНИТОРА?


6-69967
fidget
2002-02-08 17:48
2002.04.22
TWebBrowser и Ctrl+C/Ctrl+V


6-69966
rambo69
2002-02-08 20:32
2002.04.22
Снова сетевой трафик


6-69939
Sligger
2002-02-08 20:44
2002.04.22
Почтовая программа


1-69906
DeMoN-777
2002-04-09 14:09
2002.04.22
Поиск в ListBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский