相关疑难解决方法(0)

用于HTTPS抓取的Jsoup Cookies

我正在尝试使用此网站在欢迎页面上收集我的用户名以学习Jsoup和Android.使用以下代码

Connection.Response res = Jsoup.connect("http://www.mikeportnoy.com/forum/login.aspx")
    .data("ctl00$ContentPlaceHolder1$ctl00$Login1$UserName", "username", "ctl00$ContentPlaceHolder1$ctl00$Login1$Password", "password")
    .method(Method.POST)
    .execute();
String sessionId = res.cookie(".ASPXAUTH");

Document doc2 = Jsoup.connect("http://www.mikeportnoy.com/forum/default.aspx")
.cookie(".ASPXAUTH", sessionId)
.get();
Run Code Online (Sandbox Code Playgroud)

我的cookie(.ASPXAUTH)总是以NULL结尾.如果我在webbrowser中删除此cookie,我将失去连接.所以我相信这是正确的cookie.另外,如果我改变代码

.cookie(".ASPXAUTH", "jkaldfjjfasldjf")  Using the correct values of course
Run Code Online (Sandbox Code Playgroud)

我可以从这个页面抓取我的登录名.这也让我觉得我有正确的cookie.那么,为什么我的饼干出现了?我的用户名和密码名称字段是否不正确?别的什么?

谢谢.

java cookies web-scraping jsoup

15
推荐指数
3
解决办法
3万
查看次数

如何使用jsoup维护变量cookie和会话?

public boolean isGood(String path)
{
    if (p != path)
    {
        good = false;
    }

    if (good)
    {
        try 
        {
            Connection connection = Jsoup.connect(path);
            Map<String, String> cookys = Jsoup.connect(path).response().cookies();

            if (cookys != cookies)
                cookies = cookys;

            for (Entry<String, String> cookie : cookies.entrySet()) 
            {
                connection.cookie(cookie.getKey(), cookie.getValue());
            }

            Doc = connection.get();
            good = true;
        }
        catch (Exception e) 
        {
            rstring = e.getMessage().toString();
            good = false;
        }
    }
    else
    {
        try
        {
            Response response = Jsoup.connect(path).execute();
            cookies = response.cookies();
            Doc = response.parse();
            good = …
Run Code Online (Sandbox Code Playgroud)

java cookies session jsoup

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

cookies ×2

java ×2

jsoup ×2

session ×1

web-scraping ×1