这问题你上次问过吧,还没研究出来呢百度这个登录的难点在于你要研究透他是如何根据前端传的参数获取验证码的,你现在这个流程里连验证码都没有传过去,如何登录得了?

解决方案 »

  1.   

    上次那个到现在都还没有解决,但是我除了那一点没有解决,很多地方都还没有解决
    上次那个是百度注册,现在这个是百度登陆,百度登陆有时候是不需要验证码的。。之前你研究的那个token,
    后来,我在网上搜索了几番,貌似能找得到那个token值:1、访问http://www.baidu.com/并保存cookie
    2、使用上面保存的cookie访问https://passport.baidu.com/v2/api/?getapi&tpl=mn& amp;apiver=v3&tt=1395058791532&class=login& logintype=dialogLogin&callback=bd__cbs__w6qu6获取token3、使用token及上面的cookie包括用户码与密码等向https://passport.baidu.com/v2/api/?login发送POST请求进行登陆具体看这个网址教程说的:
    http://blog.163.com/lixiangqiu_9202/blog/static/53575037201421823617918/
    但是现在我不懂的是,不知道怎么用java程序
    1.如何保存cookie,哪个才是cookie
    2.怎么用保存的cookie,访问某个特定的网站
    3.怎么使用token和cookie还有用户名,密码这些用post去访问某个网站。还有我上面那样保存cookie是不是正确了,
    这样是不是找到了cookie?
    public static void main(String[] args) throws IOException { 
    // TODO Auto-generated method stub
    URL url = new URL("http://www.baidu.com");HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setRequestMethod("GET");String key = null;
    for (int i = 1; (key = conn.getHeaderFieldKey(i)) != null; i++) {
    System.out.print(key + ":");
    System.out.println(conn.getHeaderField(key));
    }
    }
    打印的数据:
    Date:Wed, 02 Jul 2014 14:42:58 GMT
    Content-Type:text/html; charset=utf-8
    Transfer-Encoding:chunked
    Connection:Keep-Alive
    Vary:Accept-Encoding
    Set-Cookie:H_PS_PSSID=1461_5225_6996_7442_6505_7232_6018_7203_7254_7134_7387_6888; path=/; domain=.baidu.com
    Set-Cookie:H_PS_PSSID=1461_5225_6996_7442_6505_7232_6018_7203_7254_7134_7387_6888; path=/; domain=.baidu.com
    Set-Cookie:H_PS_PSSID=1461_5225_6996_7442_6505_7232_6018_7203_7254_7134_7387_6888; path=/; domain=.baidu.com
    P3P:CP=" OTI DSP COR IVA OUR IND COM "
    Cache-Control:private
    Cxy_all:baidu+5fefedc1d0be4850595fb931d0d9997c
    Expires:Wed, 02 Jul 2014 14:42:36 GMT
    X-Powered-By:HPHP
    Server:BWS/1.1
    BDPAGETYPE:1
    BDQID:0xd297ffda00049779
    BDUSERID:0
    是不是Set-Cookie就是cookie的数据?
    那如果我用保存下来的cookie数据去访问
    这个网站:
    https://passport.baidu.com/v2/api/?getapi&tpl=mn& amp;apiver=v3&tt=1395058791532&class=login& logintype=dialogLogin&callback=bd__cbs__w6qu6程序该怎么写?
    我主要就是代码,不太会写,不知道应该要调用那些api。。