没有添加注释,挺兴奋的,总算弄出来了!
继续实现校内的功能
呵呵~
package Renren;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.entity.mime.Header;
public class MyRenRenFriend {
private static String userName = null;
private static String password = null;
private static HttpResponse response;
private static DefaultHttpClient httpClient = null;
public MyRenRenFriend(String userName, String password) {
this.userName = userName;
this.password = password;
this.httpClient = new DefaultHttpClient();
}
public HttpResponse login(){
String loginForm = "http://www.renren.com/PLogin.do";
String origURL = "http://www.renren.com/Home.do";
String domain = "renren.com";
HttpResponse response = null;
HttpPost httpPost = new HttpPost(loginForm);
NameValuePair email = new BasicNameValuePair("email", userName);
NameValuePair pass = new BasicNameValuePair("password", password);
NameValuePair dom = new BasicNameValuePair("domain", domain);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(email);
params.add(pass);
params.add(dom);
try {
httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
response = httpClient.execute(httpPost);
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally{
httpPost.abort();
}
return response;
// String loginForm = "http://www.renren.com/PLogin.do";
// String redirectURL = "http://www.renren.com/Home.do";
// String domain = "renren.com";
//
// HttpResponse response = null;
// HttpPost httpPost = new HttpPost(loginForm);
// NameValuePair email = new BasicNameValuePair("email", userName);
// NameValuePair pass = new BasicNameValuePair("password", password);
// NameValuePair dom = new BasicNameValuePair("domain", domain);
// NameValuePair origURL = new BasicNameValuePair("origURL", redirectURL);
// NameValuePair autoLogin = new BasicNameValuePair("autoLogin", "true");
// NameValuePair method = new BasicNameValuePair("method", "");
// NameValuePair submit = new BasicNameValuePair("submit", "登录");
// List<NameValuePair> params = new ArrayList<NameValuePair>();
//
// params.add(email);
// params.add(pass);
// params.add(dom);
// params.add(origURL);
// params.add(autoLogin);
// params.add(method);
// params.add(submit);
//
// try {
// httpPost.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
// response = httpClient.execute(httpPost);
// } catch (UnsupportedEncodingException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// } catch (ClientProtocolException e) {
// e.printStackTrace();
// } catch (IOException e) {
// e.printStackTrace();
// } finally{
// httpPost.abort();
// }
// return response;
}
public String getAllFriends(){
String allFriendURL = "http://friend.renren.com/myfriendlistx.do";
HttpGet httpGet = new HttpGet(allFriendURL);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
StringBuffer sb = null;
try {
sb = new StringBuffer(this.httpClient.execute(httpGet, responseHandler));
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
httpGet.abort();
}
return new String(sb);
}
private String getName(String str){
StringBuffer sb = new StringBuffer(str);
int pos;
while ((pos = sb.indexOf("\\u")) > -1) {
String tmp = sb.substring(pos, pos + 6);
sb.replace(pos, pos + 6, Character.toString((char) Integer
.parseInt(tmp.substring(2), 16)));
}
str = sb.toString();
return str;
}
public void getFiendName(String str){
String str1 = "var friends=[";
String str2 = "var hotfriends=";
String friend = str.substring(str.indexOf(str1), str.indexOf(str2));
String regex = "name\":(.*?),\"head";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(friend.toString());
while(matcher.find()){
System.out.print(matcher.group(1));
System.out.println("----"+Test.getName(matcher.group(1)));
}
}
public void gc(){
}
public static void main(String[] args) {
MyRenRenFriend yww = new MyRenRenFriend("用户名", "密码");
System.out.println(yww.login());
String str = yww.getAllFriends();
System.out.println("here:");
System.out.println(str);
System.out.println("Name");
yww.getFiendName(str);
}
}
分享到:
相关推荐
在描述中提到,“最新版httpclient自动登录人人代码”意味着这个压缩包包含了一个使用HttpClient实现的人人网登录程序。这个程序可能包含了设置用户名和密码,发送POST请求到人人网登录接口,以及解析和验证登录结果...
在"java httpclient 模拟登录"这个场景下,我们通常会用到HttpClient来模拟用户登录网站的过程,获取登录后的session信息,以便后续能够访问登录后才能看到的页面内容。以下将详细介绍如何使用Java HttpClient进行...
在使用HttpClient和HtmlParser实现网络爬虫的过程中,首先需要设置开发环境。这里推荐使用Eclipse Europa作为集成开发环境(IDE),并确保安装了JDK 1.6。在Eclipse中创建一个新的JAVA工程,并将HttpClient和...
本篇文章将详细探讨如何利用HttpClient来实现登录网易邮箱的功能。 首先,HttpClient是一个开源的Java库,由Apache基金会维护,它允许开发人员执行HTTP请求并处理响应。HttpClient提供了丰富的API,可以方便地实现...
在本实例中,我们将探讨如何使用HttpClient库来模拟登录网站,获取用户信息,以及处理带有验证码的登录场景。 首先,我们需要理解HttpClient的基本使用。HttpClient的核心类包括HttpClient本身,HttpGet、HttpPost...
在Java开发中,HttpClient是一个非常重要的库,它允许...通过理解和熟练运用这些知识点,开发者能够使用HttpClient有效地实现文件上传功能。在实际项目中,还需要结合具体的业务需求和服务器端接口来调整和优化代码。
总之,使用HttpClient在Android上实现文件的上传和下载,并监控进度,是一个涉及网络编程、文件操作以及UI更新的综合任务。理解这些基本原理和技巧,将有助于你在实际开发中构建更高效、用户体验更好的应用程序。
HttpClient是Apache基金会开发的一个HTTP客户端库,用于在Java应用程序中执行HTTP请求。...在本例中,我们将探讨如何使用HttpClient登录163邮箱。...正确配置和使用HttpClient,能够实现高效且可靠的网络通信。
### HttpClient 实现文件下载 #### 一、简介与原理 在Java开发中,经常会遇到需要通过HTTP协议来获取网络资源的需求,例如从Web服务器下载文件。Apache HttpClient 是一个用于发送HTTP请求的Java类库,它提供了...
在这个场景中,我们将深入探讨如何使用HttpClient 4来实现登录到一个名为"blog.com"的网站。 首先,我们需要了解HttpClient的基本概念。HttpClient 4 提供了一套完整的API,用于构建HTTP请求,处理响应,并管理持久...
在Java项目中使用HttpClient时,为了确保功能的完整性和正确性,通常需要引入一系列的jar包。这些jar包包含了HttpClient的核心组件、依赖库和其他必要的工具,它们共同构成了HttpClient的运行环境。 以下是一些关键...
本文将深入探讨HttpClient如何实现这些功能。 ### POST请求 POST请求通常用于向服务器提交数据,如表单数据或者JSON对象。使用HttpClient发送POST请求的基本步骤如下: 1. **创建HttpClient对象**:首先,我们需要...
本篇文章将深入探讨如何使用HTTPClient来实现session会话的保持,并在模拟登录后执行后续的操作。 首先,了解HTTP协议的基础知识是非常重要的。HTTP协议是无状态的,这意味着每次请求之间没有任何关联。为了保持...
使用HttpClient4.5实现https请求忽略SSL证书验证工具类
本示例将详细介绍如何使用HttpClient实现网易相册的登录。 首先,我们需要了解HttpClient的基本使用。HttpClient主要包括以下几个核心组件: 1. `CloseableHttpClient`:这是HttpClient的主要接口,负责创建和管理...
通过HttpClient实现远程下载,本例子通过java代码实现
try(CloseableHttpClient httpClient = HttpClients.createDefault()) { HttpPost httpPost = new HttpPost(url); StringEntity stringEntity = new StringEntity(params, Charset.forName("UTF-8")); ...