delphi中用webbrowser 点击网页中的按钮问题! 10

公司有个签到网页,如图,此按钮的网页源码是:<atitle="点击签到"class="bg_checkinqdbutton"onclick="ygqd()"href="j... 公司有个签到网页,如图
,此按钮的网页源码是:<a title="点击签到" class="bg_checkin qdbutton" onclick="ygqd()" href="javascript:void(0);"/>
想用delphi做个签到的小软件,一般是利用webbrowser控件,通过查找按钮的名称、标签等来模拟点击,但是此按钮的源码,不知道怎么模拟点击?请高手赐教!
展开
 我来答
zyjying520
推荐于2018-04-30 · TA获得超过225个赞
知道小有建树答主
回答量:436
采纳率:100%
帮助的人:367万
展开全部
两种方法,一种调用 js脚本
1、
uses
SHDocVw, MSHTML;
procedure ExecuteScript(wb: TWebBrowser; lScript: string);
var
HTDoc: IHTMLDocument2;
begin
try
HTDoc := (wb.Document as IHTMLDocument2);
if (HTDoc <> nil) then
begin
if HTDoc.parentWindow <> nil then
HTDoc.parentWindow.ExecScript(lScript, 'javascript');
end;
except
end;
end;

ExecuteScript(wb, 'ygqd()'); // 调用TWebBrowser中的js函数 ygqd();

2、利用 Document接口调用 bg_checkin qdbutton 的单击事件
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sirouszlh
2012-12-27 · TA获得超过1651个赞
知道小有建树答主
回答量:1038
采纳率:100%
帮助的人:628万
展开全部
var
Doc : IHtmlDocument2;
HtmlW : IHtmlWindow2;
begin

Doc :=WebBrowser1.Document as IHtmlDocument2;
if not assigned(Doc) then
exit;
HtmlW:= Doc.parentWindow;
if not assigned(HtmlW) then
exit;

// Run Javascript
try
HtmlW.execScript('ygqd()', 'JavaScript');
except
Showmessage('Call JavaScript failed!');
end;
end;
//直接调用 网页里的ygqd() 函数

另外 一个较为死板的办法
use mshtml;

var
HtmlDoc: IHtmlDocument2;
sHtml: string;
AllLinks : IhtmlElementCollection;
loginItem : IHTMLElement;
begin
HtmlDoc :=WebBrowser1.document as Ihtmldocument2; sHtml:=IHtmlDocument2(WebBrowser1.Document).Body.OuterHtml;
AllLinks := HtmlDoc.links; //获取所有超链接
//假设你要点击的链接是第6个 那就写5 因为第一个是0 。。。
loginItem:= AllLinks.item(5,emptyparam) as IHTMLElement; //点击超链接
loginItem.click

end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
salausbj
2012-12-28
知道答主
回答量:10
采纳率:0%
帮助的人:6.4万
展开全部
将onclick="ygqd()" 中的function ygqd()定义搞清楚,看看能否直接使用一个签到的简单链接;不行的话,让Webbrowser直接执行ygqd函数也应该是可行的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lovesky0414
2012-12-27 · TA获得超过3353个赞
知道大有可为答主
回答量:1610
采纳率:66%
帮助的人:1566万
展开全部
两种方法
1 直接调用这个js事件
2 签到的时候抓包,分析包,然后直接用delphi发包
追问
可否列出源代码?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式