java,导入httpClient包postMethod如何向指定网页传入账号密码,并且获得跳转后页面的url?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java,导入httpClient包postMethod如何向指定网页传入账号密码,并且获得跳转后页面的url?相关的知识,希望对你有一定的参考价值。

已经导入httpClient和htmlparser 包,现在要向某网站提交账号密码,模拟登陆功能,请问如何postMethod实现参数传递和使得页面跳转并获得跳转后页面的url?

httpClient包postMethod如何向指定网页传入账号密码
这步用HttpPost就可以成功了,如果别人向你回送跳转后页面的url,你就可以拿到,不然应该是拿不到的。追问

请问那HttpPost的参数设置如何对应网页的账号密码呢?

追答

留个邮箱,给你个demo跑一下

参考技术A webClient.setjavascriptEnabled(true);
webClient.setJavaScriptTimeout(3600*1000);
webClient.setRedirectEnabled(true);
webClient.setThrowExceptionOnScriptError(true);
webClient.setThrowExceptionOnFailingStatusCode(true);
webClient.setTimeout(3600*1000);

webClient.waitForBackgroundJavaScript(600*1000);
webClient.setAjaxController(new NicelyResynchronizingAjaxController());

// if (Integer.parseInt(currentPage)<6)

page = (HtmlPage) webClient.getCurrentWindow().getEnclosedPage();
HtmlAnchor a=(HtmlAnchor)page.getAnchorByText(currentPage);
try
page=a.click();
Thread.sleep(time);
catch (Exception e1)
// TODO Auto-generated catch block
e1.printStackTrace();

page = (HtmlPage) webClient.getCurrentWindow().getEnclosedPage();
参考技术B //传送数据
String requestData = g.toJson(paramMap);
//接收
String result = HttpClients.doPost(url, requestData);

java 如何引入 jar包?

首先,我是只是写一些小程序,没有用 eclipse 这个IDE,所以不用给我讲如何在eclipse中引入。。。谢谢

我只是在CMD下javac在编程代码的。写些小程序而已。。。

目前在写一个模拟浏览器访问的程序,使用httpClient
由于该jar包没有正常引入,导致编译失败:软件包不存在。。

我引入的方法是这样的:
在Java的安装目录(JAVA_HOME)建立一个 client 目录,

将httpClient的

httpclient-4.2.5.jar
httpcore-4.2.5.jar

拷贝到client目录

然后修改系统环境变量
CLASSPATH:
增加:.;%JAVA_HOME%\client\httpclient-4.2.5.jar


CMD:执行 javac ....java

软件包不存在。

求正确引入jar包的方法。(不在IDE的操作下)

谢谢

右键项目-properties-java build path(左侧菜单)-选择libraries
有两种方式,导入jar包实际上就是建立一种链接,并不是copy式的导入
一、导入外部包,add external jars...,这种只是与jar包的绝对路径建立链接,并不会拷贝到项目中。
二、导入包,add jars...,这种需要你事先把jar包拷贝到项目中,通过选择项目下的jar,与jar包的相对路径建立链接。
两种方式下导入的包,jar包名称前面的图标会有区别。
另外,如果jar包名称前面的图标出现黄色叹号,
说明这个jar的路径有问题,需要重新导入。
参考技术A andriod中如果引入jar包的方式不对就会出现一些奇怪的错误。
工作的时候恰好有一个jar包需要调用,结果用了很长时间才解决出现的bug。
刚开始是这样引用的(eclipse):
右键工程,Build path,java build path,
选择libraries,在右边的按钮中点击“Add External JARs”,
然后选择合适的jar包(大部分人应该会这样做).
结果控制台立刻报错:conversion to dalvik format failed with error 1。
而且项目上还会出现红叉,虽然项目里并没有错误。
clean一下,项目正常,但是bin里的apk文件和dex文件都没了,运行项目出现错误:Can not find **.apk后来找到原因是因为导入jar包的方式不对,
正确的方法如下:
1,右键工程, Build path, java build path,
2,选择libraries在右边的按钮中点击“Add Library”
3,选择“User library”,点击“下一步”
4,点击“User librarys”按钮在出现的界面中点击“New..”按钮
在弹出的界面中随便起一个名字,点击“确定”
5,点击“Add jars”按钮选择第三方jar包,
点击“确定”完成操作。这样的话该jar包会被一起打包到apk中,问题也就解决了!
参考技术B 包不是这么引入的!
把你需要的第三方包放到你的jdk下面的jre下面的lib下面的ext包下就可以了!本回答被提问者和网友采纳
参考技术C 报的是哪个包不存在

以上是关于java,导入httpClient包postMethod如何向指定网页传入账号密码,并且获得跳转后页面的url?的主要内容,如果未能解决你的问题,请参考以下文章

接口自动化HttpClient-基础篇1

通过Fiddler抓取Java HttpClient的HTTP包

java如何下载和安装org.apache.commons.httpclient的jar包?

HttpClient配置及运用

Httpclient

HttpClient配置及示例代码