繁体   English   中英

如何在解析数据之前使用“Jsoup”登录网页?

[英]How to login a webpage using "Jsoup" before parsing its data?

我已经编写了 java 程序以使用 Jsoup 连接到https://www.valueresearchonline.com/funds/portfoliovr.asp?schemecode=26123 Jsoup解析数据。

现在该网站已强制要求在显示全部数据之前先登录。

https://www.valueresearchonline.com/login

有没有办法先用Jsoup登录一个网站,然后再解析它?

pom.xml

<dependency>
              <groupId>org.jsoup</groupId>
              <artifactId>jsoup</artifactId>
               <version>1.15.3</version>
          </dependency>

java 文件导入如下

import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

下面的工作代码

 Connection.Response res = Jsoup.connect("https://www.valueresearchonline.com/login").userAgent("Mozilla")
                .data("username", "your_username", "password", "your_password")
                .method(Connection.Method.POST)
                .execute();

    System.out.println(res.statusCode());

//这将为您提供 cookies

Map<String, String> loginCookies = res.cookies();

//这里你解析你想要的页面。 把登录时看到的url

Document doc = Jsoup.connect("https://www.valueresearchonline.com/")
            .userAgent("Mozilla")
            .cookies(loginCookies)
            .get();

System.out.println(doc.baseUri());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM