次のコードを使用して、Web サイトのログイン フォームのそれぞれのフィールドにユーザー名とパスワードを入力しています。
var
Doc: IHTMLDocument2;
I: Integer;
Element: OleVariant;
Elements: IHTMLElementCollection;
Sub: Variant;
begin
Doc := WebBrowser1.Document as IHTMLDocument2;
Elements := Doc.All;
for I := 0 to Elements.length - 1 do begin
Element := Elements.item(I, varEmpty);
if (UpperCase(Element.tagName) = 'INPUT') and (UpperCase(Element.Type) = 'TEXT') then begin
if (Element.name = 'user') then Element.value := 'theusername';
if (UpperCase(Element.tagName) = 'INPUT') and (UpperCase(Element.Type) = 'PASSWORD') then begin
if (Element.name = 'passwrd') then Element.value := 'thepassword';
end;
end;
Sub := WebBrowser1.Document;
Sub.frmLogin.Submit();
end;
end;
それぞれのフィールドに関する情報:
コードを実行するとどうなるか:
ご覧のとおり、ユーザー名の部分が機能し、ユーザー名が挿入されます。ただし、パスワード フィールドはそうではありません。
私は何を間違っていますか?