안녕하세요^^*
다른사이들은 WebBrowser1 컨트롤을 사용해서 INPUT 입력폼에 자동으로 VALUE 값을 삽입할수있었습니다.
하지만 네이버에서는 id,pw 입력폼에 자동삽입 자체가 안됩니다.
안되는 원인이 무엇인지 알고싶습니다.
소중한 시간을 내주셔서 고맙습니다.^^8
꼭 해결을 하고싶습니다.
**************** 네이버 로그인처리 HTML 소스 일부분 ******************************
참고URL = http://nid.naver.com//nidlogin.login
<div class="form">
<input type="hidden" name="url" id="url" value="http://www.naver.com">
<input type="hidden" name="svctype" value="0">
<input type="hidden" name="viewtype" value="">
<input type="hidden" name="postDataKey" value="">
<input type="hidden" name="encpw" id="encpw" value="">
<input type="hidden" name="encnm" id="encnm" value="">
<input type="hidden" name="saveID" id="saveID" value="0">
<input type="hidden" name="enctp" id="enctp" value="2">
<script type="text/javascript">
document.write("<input type='hidden' id='smart_level' name='smart_level' value='"+is_ipcheck+"'>");
</script>
<div id="login_box">
<div class="log01">
<input type="text" name="id" id="id" maxlength="25" size="12" tabindex="1" accesskey="l" style="background:url(/id/green/loginbox_id02.gif) no-repeat 4px 3px #FFFFFF;" class="box_input" datatype="alphanumeric" mask="-_." >
<input type="Checkbox" name="sID" id="sID" style="display:none;"><img src="/id/green/uncheck.gif" onClick="javascript:SidCheckedSwap();" onMouseOver="javascript:SidCheckedMouseOn();" onMouseOut="javascript:SidCheckedMouseOff();" tabindex="4" alt="" width="13" height="13" id="sidImg" >
<label>아이디저장</label>
</div>
<div class="log02">
<input id="pw" type="password" name="pw" tabindex="2" value="" maxlength="16" style="background:url(/id/green/loginbox_pw02.gif) no-repeat 4px 3px #FFFFFF" class="box_input">
<input type="image" src="/id/green/btn_login03.gif" id="submit_img" width="47" tabindex="3" height="21" class="btn_log">
</div>
**************** 네이버 로그인처리 HTML 소스 일부분 종료 ******************************
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
WebBrowser1: TWebBrowser;
procedure Button1Click(Sender: TObject);
procedure WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('http://nid.naver.com/login/login.pw.nhn?url=http%3A%2F%2Fwww.naver.com&postDataKey=&svctype=0');
end;
procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
var
tags: OleVariant;
i: Integer;
loID,loPW: String;
begin
loID:='abcd'; // 사용자 아이디입력
loPW:='pass'; // 사용자 비밀번호 입력
tags := WebBrowser1.OleObject.Document.Body.getElementsByTagName('INPUT');
if WebBrowser1.ReadyState = READYSTATE_COMPLETE then begin
for i := 0 to tags.Length - 1 do
begin
if (tags.Item(i).NAME = 'id') and (tags.item(i).id='id') then
begin
tags.Item(i).value := loID; // 네이버 사용자 ID 입력폼에 삽입
end;
if (tags.Item(i).NAME = 'pw') and (tags.item(i).id='pw') then
begin
tags.Item(i).value := loPW; // // 네이버 사용자 비밀번호 입력폼에 삽입
end;
end;
end;
end;
end.