
正文
java下载页面代码 java下载文件夹代码
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何用Java实现模拟登录Discuz!论坛并下载返回的html代码?
package org.shaw;
import org.apache.commons.httpclient.Cookie;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.methods.PostMethod;
public class BaiyouBBS {
static final String LOGON_SITE = "";
static final int LOGON_PORT = 80;
public Cookie[] login(String name, String pas) {
try {
HttpClient client = new HttpClient();
client.getHostConfiguration().setHost(LOGON_SITE, LOGON_PORT);
PostMethod post = new PostMethod("/logging.php?action=login");
client.executeMethod(post);
String responseString = new String(post.getResponseBody(), "gbk");
post.releaseConnection();
String formhash = getFormHash(responseString);
System.out.println(formhash);
post = new PostMethod("/logging.php?action=login");
NameValuePair[] params = new NameValuePair[11];
params[0] = new NameValuePair("loginfield", "username");
params[1] = new NameValuePair("username", name);
params[2] = new NameValuePair("password", pas);
params[3] = new NameValuePair("referer", "index.php");
params[4] = new NameValuePair("questionid", "0");
params[5] = new NameValuePair("answer", "");
params[6] = new NameValuePair("cookietime", "2592000");
params[7] = new NameValuePair("formhash", formhash);
params[8] = new NameValuePair("loginmode", "");
params[9] = new NameValuePair("loginsubmit", "true");
params[10] = new NameValuePair("styleid", "");
post.setRequestBody(params);
client.executeMethod(post);
// responseString = new String(post.getResponseBody(), "gbk");
post.releaseConnection();
GetMethod get = new GetMethod("/index.php");
client.executeMethod(get);
responseString = new String(get.getResponseBody(), "gbk");
get.releaseConnection();
System.out.println(responseString);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public String getFormHash(String htmlContent) {
try {
int start = htmlContent.indexOf("name=\"formhash\"");
start = htmlContent.indexOf("value=\"", start) + 7;
int end = htmlContent.indexOf("\"", start);
String formhash = htmlContent.substring(start, end);
return formhash;
} catch (RuntimeException e) {
throw e;
}
}
public static void main(String[] args) {
new BaiyouBBS().login("zzzxxxzzz", "zzzxxxzzz");
}
}
相关问答
Q1: java代码实现网页下载
看你的意思,我觉得你可以去网上查查java网络爬虫的实现,就是自动抓取网页内容,并保存
这里有个链接你可以参考下
Q2: 使用java编写一个多线程下载器,需要在URL栏中输入网址,然后通过网址下载。该怎么实现,求源代码
swing做前台界面。后台使用java.net中java下载页面代码的HTTPConnection下载就OK。下载可以用getInputStream()获取数据java下载页面代码,然后写入文件。只提供思路java下载页面代码,无代码。不搞java好多年……
Q3: java怎么实现下载指定网页中包含的pdf文件。 求代码?
解析指定页面java下载页面代码,得到pdf文件java下载页面代码的地址java下载页面代码,用URL来取回pdfjava下载页面代码的输入流java下载页面代码,然后写到本地文件。
关于java下载页面代码和java下载文件夹代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







