HTTPClient实现java自动登录人人网

原创 2013年12月02日 20:11:02
参考网址:
https://passport.csdn.net/account/login 
http://www.iteye.com/topic/638206
httpClient
http://bbs.csdn.net/topics/390495789 
http://developer.51cto.com/art/200806/76048.htm
http://my.oschina.net/lldy/blog/57086
http://blog.csdn.net/yodlove/article/details/5938022 
http://java.chinaitlab.com/net/870192.html
http://blog.csdn.net/wguoyong/article/details/6883706 
http://www.holdjava.com/networkprogramme/213519.htm
http://www.th7.cn/Program/java/2011/08/26/40877.shtml
http://www.oschina.net/question/96568_91032
http://blog.csdn.net/passportandy/article/details/7101913 
http://www.cr173.com/soft/61128.html
http://wenku.baidu.com/link?url=d4RXqVqu05FmVVc23zuL0bA8Q9CXIaOOeBu7lYm9mlEaUwFp3X9EGfxOldUqO9pQtIh6Cf37IclGbTURFPnZRBGkn-tjYI3_vFUO2J5PVn7
http://www.oschina.net/question/1378722_130120
http://csstome.iteye.com/blog/936276
http://extjs2.iteye.com/blog/807039
http://www.docin.com/p-611908008.html
http://blog.163.com/ww20042005@126/blog/static/949490452010101102817765/
http://www.pudn.com/downloads322/sourcecode/java/jsp/detail1422233.html
http://www.oschina.net/question/944872_111722
http://bbs.csdn.net/topics/390651559?page=1#post-396177585 
http://www.52pojie.cn/thread-56913-1-1.html
http://www.yc-edu.org/javapeixun/2129.html
 
Java code
1  
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package test;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
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.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
//import org.apache.http.client.CookieStore;
import org.apache.http.cookie.Cookie;
public class Test{
    publicstaticvoidmain(String[] args)throwsClientProtocolException,IOException{
    String loginurl="http://www.renren.com/PLogin.do";
    String username="*****@qq.com";
    String password="*****";
    System.out.println(Test.posturl(loginurl,username,password));
}
publicstaticString posturl(String loginurl,String username,String
     password)throwsClientProtocolException, IOException{
 
     HttpClient httpclient1 =newDefaultHttpClient();
     HttpPost httppost =newHttpPost(loginurl);
     List<NameValuePair> formparams =newArrayList<NameValuePair>();
     formparams.add(newBasicNameValuePair("email",username));
     formparams.add(newBasicNameValuePair("password",password));
     UrlEncodedFormEntity entity =newUrlEncodedFormEntity(formparams,"utf-8");
     httppost.setEntity(entity);
     String str="";
     HttpClient httpclient2=null;
     try{
     HttpResponse response1 = httpclient1.execute(httppost);
     String login_success=response1.getFirstHeader("Location").getValue();//获取登陆成功之后跳转链接
          
     System.out.println(login_success);
    
     HttpGet httpget =newHttpGet(login_success);
     httpclient2 =newDefaultHttpClient();
     HttpResponse response2=httpclient2.execute(httpget);
     str=EntityUtils.toString(response2.getEntity());
      httppost.abort();
      httpget.abort();
     }finally{
   httpclient1.getConnectionManager().shutdown();
   httpclient2.getConnectionManager().shutdown();
  }
 
return str;
}
}

 

 

 

 

Java代码 复制代码 收藏代码
  1. public class RenRen { 
  2.     // The configuration items 
  3.     private static String userName ="YourMailinRenren"
  4.     private static String password ="YourPassword"
  5.     private static String redirectURL ="http://blog.renren.com/blog/304317577/449470467"
  6.  
  7.     // Don't change the following URL 
  8.     private static String renRenLoginURL ="http://www.renren.com/PLogin.do"
  9.  
  10.     // The HttpClient is used in one session 
  11.     private HttpResponse response; 
  12.     private DefaultHttpClient httpclient =new DefaultHttpClient(); 
  13.  
  14.     private boolean login() { 
  15.         HttpPost httpost = new HttpPost(renRenLoginURL); 
  16.         // All the parameters post to the web site 
  17.         List<NameValuePair> nvps = new ArrayList<NameValuePair>(); 
  18.         nvps.add(new BasicNameValuePair("origURL", redirectURL)); 
  19.         nvps.add(new BasicNameValuePair("domain","renren.com")); 
  20.         nvps.add(new BasicNameValuePair("isplogin","true")); 
  21.         nvps.add(new BasicNameValuePair("formName","")); 
  22.         nvps.add(new BasicNameValuePair("method","")); 
  23.         nvps.add(new BasicNameValuePair("submit","登录")); 
  24.         nvps.add(new BasicNameValuePair("email", userName)); 
  25.         nvps.add(new BasicNameValuePair("password", password)); 
  26.         try
  27.             httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8)); 
  28.             response = httpclient.execute(httpost); 
  29.         } catch (Exception e) { 
  30.             e.printStackTrace(); 
  31.             return false
  32.         } finally
  33.             httpost.abort(); 
  34.         } 
  35.         return true
  36.     } 
  37.  
  38.     private String getRedirectLocation() { 
  39.         Header locationHeader = response.getFirstHeader("Location"); 
  40.         if (locationHeader == null) { 
  41.             return null
  42.         } 
  43.         return locationHeader.getValue(); 
  44.     } 
  45.  
  46.     private String getText(String redirectLocation) { 
  47.         HttpGet httpget = new HttpGet(redirectLocation); 
  48.         // Create a response handler 
  49.         ResponseHandler<String> responseHandler = new BasicResponseHandler(); 
  50.         String responseBody = ""
  51.         try
  52.             responseBody = httpclient.execute(httpget, responseHandler); 
  53.         } catch (Exception e) { 
  54.             e.printStackTrace(); 
  55.             responseBody = null
  56.         } finally
  57.             httpget.abort(); 
  58.             httpclient.getConnectionManager().shutdown(); 
  59.         } 
  60.         return responseBody; 
  61.     } 
  62.  
  63.     public void printText() { 
  64.         if (login()) { 
  65.             String redirectLocation = getRedirectLocation(); 
  66.             if (redirectLocation != null) { 
  67.                 System.out.println(getText(redirectLocation)); 
  68.             } 
  69.         } 
  70.     } 
  71.  
  72.     public staticvoid main(String[] args) { 
  73.         RenRen renRen = new RenRen(); 
  74.         renRen.printText(); 
  75.     } 


 

HttpClient实现CSDN自动登录

参考网上代码,通过httpclient实现CSDN自动登录,问题是对于网页表单JS动态加载的还没找到办法自动填写和提交。 1、HttpUtils类封装httpclient的get和post方法 p...
  • fjssharpsword
  • fjssharpsword
  • 2016年05月20日 12:21
  • 3089

Java HttpClient 实现自动登录与获取网页信息

用HttpGet获取网页上的信息: public void testGet(String url) throws ClientProtocolException, IOException { //...
  • llwwlql
  • llwwlql
  • 2016年10月11日 20:39
  • 6487

利用HttpClient模拟登陆人人网、发送状态

由于利用网络爬虫抓取信息,不可避免的会遇到一些需要模拟登陆的地方,听学长讲人人网的登陆相对简单,于是乎便从模拟登陆人人网开始尝试。 首先便是从网上搜集资料,看看别人的代码是怎样实现模拟登陆人人的...
  • wustzbq0713
  • wustzbq0713
  • 2015年05月26日 10:35
  • 760

httpClient自动登录获取登录后的页面

用HttpClient 4.X来实现获取登录的页面比较容易,不需要获取Cookie值,默认浏览器HttpClient对象会自动保存Cookie信息,只要是用的一个HttpClient对象,在登录后,就...
  • llwwlql
  • llwwlql
  • 2016年12月10日 16:09
  • 1579

人人网用户信息爬虫

人人网用户信息爬虫一直想做一个项目,爬取各个社交网站上与我们学校有关的用户的各种信息,然后分析用户行为。由于人人网的爬虫比较简单,所以最先从人人网爬起。import re ...
  • y0nghum1ng
  • y0nghum1ng
  • 2015年08月31日 23:05
  • 1141

JAVA通过Session和Cookie实现网站自动登录的技术

 本方案为我这个站点当前使用的,能用,但不保证是最先进的。 原文:http://www.java2000.net/p1010第一步,登陆的时候一旦选择了[自动登录]的选项,则需要在登陆成功后,附加下面...
  • java2000_net
  • java2000_net
  • 2008年07月28日 07:15
  • 21484

JavaWeb 过滤器实现30天内自动登录

1、在 index.jsp 中 30天内自动登陆 游客! 登录 欢迎回来,${sessionScope.user.name } ...
  • hlbt0112
  • hlbt0112
  • 2015年08月06日 10:07
  • 2278

Java代码实现自动登录功能

转载来自:http://javacrazyer.iteye.com/blog/769896 通常我们登录某网站,会有选择保存几天,或者是几个星期不用登录,之后输入该网站地址无需登录直接进入主页面...
  • shehun11
  • shehun11
  • 2015年01月04日 00:06
  • 4500

java web session+cookie实现用户自动登录

在之前的博文中介绍了项目中防止用户重复登录的方案及解决非法退出异常的处理方法——监听浏览器关闭事件onbeforeunload,发送ajax请求到服务器端执行正常退出程序,以避免用户被锁死的情况。然后...
  • dinghaoseu
  • dinghaoseu
  • 2015年12月19日 19:20
  • 5963

(Java)安全的七天自动登录

做一个安全的七天自动登录 浏览器要实现自动登录,将登录信息保存本地的cookie里,但仅仅保存安全隐患高。 流程 1.保存用户信息,当选择七天自动登录复选框时,在后台验证用户密码正确后,将用户的...
  • polisa
  • polisa
  • 2017年08月03日 10:41
  • 294
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HTTPClient实现java自动登录人人网
举报原因:
原因补充:

(最多只允许输入30个字)