通过对现有的一些例子的整理,我得到了如下的一些使用HtmlUnit的基本过程(Ajax还在学习中,故没有加入进去)
第一步 初始化webClient

WebClient webClient = new WebClient();
初始化一个客户端对象,也可以有参数,如BrowserVersion.INTERNET_EXPLORER_8),代表浏览器及版本
此时可以设置一些webClient的参数,目前例子中已知如下参数设置:
webClient.setJavaScriptEnabled(true);目测是设置客户端是否支持JavaScript
webClient.setCssEnabled(true);同上吧
webClient.setAjaxController(new NicelyResynChronizingAjaxController());
目测这个就是我想要的Ajax了吧
webClient.setTimeout(TIMECOUNT);我猜这个就是设置超时时间。
webClient.setThrowExceptionOnScriptError(false);
这个意思是关闭脚本错误时抛出异常,不知道是不是

第二步 设置htmlPage
HtmlPage htmlPage = webClient.getPage(URL);
根据URL获取html页面对象

第三步 获取界面元素
HtmlDivision div = page.getHtmlElementById("some_div_id");
HtmlAnchor anchor = page.getAnchorByName("anchor_name");

第四步 模拟页面提交一个form
HtmlForm form = htmlPage.getFormByName("myform");
HtmlSubmitInput button = form.getInputByName("submitbutton");
HtmlTextInput textField = form.getInputByName("userid");
textField.setValueAttribute("root");
HtmlPage nextPage = button.click();

第五步 模拟用户登录
URL url = new URL("some_url");
WebRequestSettings reqSet = new WebRequestSettings(url, SubmitMethod.POST);
List reqParam = new ArrayList();
reqParam.add(new NameValuePair("entered_login", username));
reqParam.add(new NameValuePair("entered_password", password));
reqParam.add(new NameValuePair("entered_imagecode", verifycode));
reqSet.setRequestParameters(reqParam);
HtmlPage mypage = (Htmlpage)client.getPage(reqSet);

HtmlUnit的入门教程整理相关推荐

  1. 清华大学终于把Python入门教程整理成漫画书,495页全彩PDF+600分钟配套视频,免费分享

    Python语言目前是全球比较流行且产业急需的程序设计语言,具有跨平台.开源.免费等特点.它的应用领域广泛,比如数据处理.web开发.科学计算.网络爬虫.人工智能等等. 很多小伙伴想学习却苦于没有门路 ...

  2. 【Unity】零基础入门教程整理

    中文教程 学院派 夏村散人韩老师带你打基础 刘铁猛<C#语言入门详解>全集,最扎实的C#入门 活泼派 M_Studio作品 Unity教程 入门第一款游戏制作教程合集 用途很广的对话系统教 ...

  3. EasyUI入门教程整理与示例代码下载

    场景 EasyUI环境搭建与入门基础语法 https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/90760947 EasyUI中拖动dra ...

  4. FDTD Solutions自学整理笔记入门教程(3):监视器Monitors

    FDTD自学整理笔记入门教程之监视器(转载+改动) 3.监视器Monitors:(这个编辑器真的不方便,文字+图片的操作真是太麻烦了,为了方便就简单截图上传)

  5. 时间序列入门教程,从理论到业务实践,Kaggle kernels Master 整理分享

    一.前言 最近逛了逛Kaggle,发现了一个非常详细的时间序列教程. 里面记载了很多关于时间序列的知识,并且一直在updating中. 可以看到这个教程已经被观看了6w多次. 点赞700+, copy ...

  6. 【知识整理】这可能是最好的RxJava 2.x 入门教程(四)

    这可能是最好的RxJava 2.x入门教程系列专栏 文章链接: 这可能是最好的RxJava 2.x 入门教程(完结版)[强力推荐] 这可能是最好的RxJava 2.x 入门教程(一) 这可能是最好的R ...

  7. HtmlUnit入门教程

    作者:吴香礼 Email:wxl901018@163.com QQ:1060394242 本文禁止用于商业用途 1.     简介 htmlunit是一款开源的java页面分析工具,读取页面后,可以有 ...

  8. 【转】HtmlUnit入门教程

    转载出处:http://blog.csdn.net/wxl901018/article/details/44133873 1. 简介 htmlunit是一款开源的Java页面分析工具,读取页面后,可以 ...

  9. 【CV】Pytorch一小时入门教程-代码详解

    目录 一.关键部分代码分解 1.定义网络 2.损失函数(代价函数) 3.更新权值 二.训练完整的分类器 1.数据处理 2. 训练模型(代码详解) CPU训练 GPU训练 CPU版本与GPU版本代码区别 ...

最新文章

  1. 报复性降薪潮来袭,怎么应对?
  2. TCP/IP详解 笔记八
  3. 操作系统课设--系统调用
  4. 用master-worker模型比对团队管理
  5. 干货:如何在前端统计用户访问来源?
  6. html网页钩子,HTML5中的meta标签 和 IE浏览器能识别的钩子
  7. 【Envi风暴】基于ENVI平台提取ASTER DEM完整操作步骤(附案例数据)
  8. 用于RIA的JavaFX 2与HTML5
  9. solid测序列原理_SOLID原理简介
  10. POJ 1862 amp; ZOJ 1543 Stripies(贪心 | 优先队列)
  11. flask html缓存,flask_cache如何缓存动态数据,如何调用缓存数据
  12. linux epoll用法之二
  13. 但是在公司开空调睡觉还是冷
  14. python的入门UDP编程
  15. 万字雄文前瞻丨区块链及隐私计算在传统企业中的技术认知与进阶思考
  16. FOI对象中显示labels --Oracle Map
  17. html论坛发帖案例
  18. Web Vue VIII
  19. JSON解析格式化工具——非插件(超好用推荐)
  20. bzoj 3620: 似乎在梦中见过的样子

热门文章

  1. PHP解析HTTP_USER_AGENT 获取客户端浏览器以及版本号
  2. C#中使用设置(Settings.settings) Properties.Settings.Default .
  3. Android日常开发收集的Tips
  4. 【论文学习】MKIoU Loss: Towards Accurate Oriented Object Detection in Aerial Images
  5. Leetcode 45. 跳跃游戏 II
  6. 嵌入式系统硬件构成-嵌入式系统硬件体系结构
  7. 韶音骨传导耳机好用吗?韶音和南卡骨传导耳机对比实测
  8. ios 打开java文件,app开文文献_ios app可以用java开发
  9. ASO优化中关于APP推广的一些基本而有效的方法
  10. C++性能优化笔记-13-特定优化主题