如何实现自动在网页中输入内容,并点击相关的按钮

XBox360 2005-08-30 03:36:52
比如一个网页http://xxx.xxx.xxx.xxx/abc.asp中有如下结构

xxx 输入框1 按钮1
xxx 输入框2 按钮2
输入框3 xxx 输入框4 按钮3

我现在想用个Timer来循环做:往输入框1填入固定内容,然后点按钮1.
不知道该如何实现,不需要显示出网页,是否用IdHttp?
...全文
228 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
XBox360 2005-09-02
  • 打赏
  • 举报
回复
问题自己解决了,散分!
XBox360 2005-09-01
  • 打赏
  • 举报
回复
老妖网站上弄到一个例子

void __fastcall TForm1::WebPostData(TCppWebBrowser *CppWebBrowser, String sURL, String sPostData)
{
BSTR bstrHeaders = NULL;
TVariant vFlags = {0}, vTargetFrameName={0}, vPostData={0}, vHeaders={0};
LPSAFEARRAY psa;
LPCTSTR cszPostData = sPostData.c_str();
UINT cElems = lstrlen(cszPostData);
LPSTR pPostData;
LPVARIANT pvPostData;

bstrHeaders = SysAllocString(L"Content-Type: application/x-www-form-urlencodedrn");
if (!bstrHeaders){
Application->MessageBox("Could not allocate bstrHeaders", "Warning", MB_OK | MB_ICONWARNING);
return;
}

V_VT(&vHeaders) = VT_BSTR;
V_BSTR(&vHeaders) = bstrHeaders;

pvPostData = vPostData;

if(pvPostData){
VariantInit(pvPostData);

psa = SafeArrayCreateVector(VT_UI1, 0, cElems);
if(!psa){
return;
}

SafeArrayAccessData(psa, (LPVOID*)&pPostData);
memcpy(pPostData, cszPostData, cElems);
SafeArrayUnaccessData(psa);

V_VT(pvPostData) = VT_ARRAY | VT_UI1;
V_ARRAY(pvPostData) = psa;
}

CppWebBrowser->Navigate((TVariant)sURL, &vFlags, &vTargetFrameName, &vPostData, &vHeaders);
}

但是调用这个函数测试登陆,怎么不行呢
"Content-Type: application/x-www-form-urlencodedrn"
这个是什么意思,是不是不同的页面,这一段也不同啊?
XBox360 2005-09-01
  • 打赏
  • 举报
回复
上面的问题自己搞定了,但是怎么点击链接呢?
蒋晟 2005-08-31
  • 打赏
  • 举报
回复
http://support.microsoft.com/kb/311293
http://support.microsoft.com/?kbid=815722
XBox360 2005-08-31
  • 打赏
  • 举报
回复
怎么没人看啊
昨天搜了一天的帖子

请问是否只需要用IdHttp的Post或者Get就搞定了
还是需要获得什么IHTMLDocument2的接口?
第一次弄网页方面的东西,个位帮忙啊

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧