社区
网络及通讯开发
帖子详情
如何自动填写网页表单,并自动提交
a0910472
2013-05-11 05:07:27
我的想法是完全模拟人工操作,但是遇到一个困难:怎样快速定位网页输入框。另外,这种模拟人工操作的方法效率较低。求一个效率高一点的方法
...全文
1388
3
打赏
收藏
如何自动填写网页表单,并自动提交
我的想法是完全模拟人工操作,但是遇到一个困难:怎样快速定位网页输入框。另外,这种模拟人工操作的方法效率较低。求一个效率高一点的方法
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
我不懂电脑
2013-05-13
打赏
举报
回复
这个用c#很容易实现,用BCB的话要调用ihtml api比较复杂,给你个c#的资料 。 在.Net 2.0中,整个HTML文档以及其包含的各个HTML元素,都和一个个HtmlDocument、HtmlElement之类的.Net对象对应。因此只要找到这个“关闭”按钮对应的HtmlElement对象,为其click事件添加Event Handler即可。 HTML code <html><body><input type="button" id="btnClose" value="关闭"/></body></html> 那么找出该按钮并为之添加Event Handler的代码如下: C# codeHtmlDocument htmlDoc = webBrowser.Document; HtmlElement btnElement = htmlDoc.All["btnClose"]; if (btnElement !=null) { btnElement.click+=new HtmlElementEventHandler(HtmlBtnClose_Click); } 其中 HtmlBtnClose_Click是按下Web按钮时的Event Handler。 很简单吧?那么稍稍高级一点的——我们都知道一个HTML元素可能有很多各种各样的事件,而HtmlElement这个类只给出最常用、共通的几 个。那么,如何响应其他事件呢?这也很简单,只需要调用HtmlElement的AttachEventHandler就可以了: C# codebtnElement.AttachEventHandler("onclick", new EventHandler(HtmlBtnClose_Click)); //这一句等价于上面的 btnElement.click += new HtmlElementEventHandler(HtmlBtnClose_Click); 对于其他事件,把"onclick"换成该事件的名字就可以了。例如: C# code formElement.AttachEventHandler("onsubmit", new EventHandler(HtmlForm_Submit)); ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 要使我们的WebBrowser具有自动填表、甚至自动提交的功能,并不困难。 假设有一个最简单的登录页面,输入用户名密码,点“登录”按钮即可登录。已知用户名输入框的id(或Name,下同)是username,密码输入 框的id是password,“登录”按钮的id是submitbutton,那么我们只需要在webBrowser的 DocumentCompleted事件中使用下面的代码即可: C# codeHtmlElement btnSubmit = webBrowser.Document.All["submitbutton"]; HtmlElement tbUserid = webBrowser.Document.All["username"]; HtmlElement tbPasswd = webBrowser.Document.All["password"]; if (tbUserid ==null|| tbPasswd ==null|| btnSubmit ==null) return; tbUserid.SetAttribute("value", "smalldust"); tbPasswd.SetAttribute("value", "12345678"); btnSubmit.InvokeMember("click"); 这里我们用SetAttribute来设置文本框的“value”属性,用InvokeMember来调用了按钮的“click” 方法。因为不同的Html元素,其拥有的属性和方法也不尽相同,所以.Net 2.0提供了统一的HtmlElement来概括各种Html元素的同时,提供了这两个方法以调用元素特有的功能。关于各种Html元素的属性和方法一 览,可以查阅MSDN的DHTML Reference。 ※关于表单的提交,的确还有另一种方法就是获取form元素而不是button,并用form元素的 submit方法: C# codeHtmlElement formLogin = webBrowser.Document.Forms["loginForm"]; //……formLogin.InvokeMember("submit");本文之所以没有推荐这种方法,是因为现在的网页,很多都在submit按钮上添加onclick事件,以对提交的内容做最基本的验证。如果直接使用form的submit方法,这些验证代码就得不到执行,有可能会引起错误
dataxdata
2013-05-12
打赏
举报
回复
找HTML代码中的form、input之类,把表单的结构提取出来,然后自己生成一个GET或POST请求发给服务器就行了
laqhelen
2013-05-11
打赏
举报
回复
实现HTTP协议,这有HTTP的例子WebClnt,你看看: http://download.csdn.net/detail/geoff08zhang/4571358
表单
自动
填写
,
网页
自动
提交
工具
模拟人工
提交
网页
表单
操作,同时监控
提交
结果变化并报警提示或
自动
处理报警动作。可广泛用于注册
表单
、登陆
表单
、信息添加修改
表单
提交
。 1、支持多任务多操作连续
提交
,实现无人值守。 2、支持通过多代理服务器访问...
jquery.validate.js 1.8.1 + 实例
`jQuery Validate` 可以阻止未通过验证的
表单
提交
,但你还需要设置
提交
事件的处理程序来处理成功
提交
的情况: ```javascript $("#myForm").submit(function(e) { if ($(this).valid()) { //
表单
数据通过验证,...
自动
化
表单
抓取数据:使用 Python
自动
填写
并
提交
表单
抓取结果
自动
化
表单
提交
指的是通过编程方式模拟用户在
网页
中
填写
表单
并点击
提交
按钮的过程。
自动
化
提交
表单
后,
网页
会返回一些数据或反馈,这些数据通常是我们爬取的目标。本文介绍了如何使用 Python 和 Selenium
自动
填写
并...
表单
自动
填写
网页
自动
提交
工具:一键
自动
化
表单
操作,提升工作效率
表单
自动
填写
网页
自动
提交
工具:一键
自动
化
表单
操作,提升工作效率 【下载地址】
表单
自动
填写
网页
自动
提交
工具 这是一款高效的
自动
化工具,专为简化
网页
表单
填写
与
提交
而设计。它能够模拟人工操作,
自动
完成...
python
网页
提交
表单
_python模拟实现
自动
填写
网页
表单
源码
#python模拟实现
自动
填写
网页
表单
源码 运行:Python3+第三方包# coding: utf-8import time,sysimport pyautogui,pyperclipimport pandas as pd#保护措施,避免失控pyautogui.FAILSAFE = False#为所有的PyAutoGUI函数...
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章