Я бы хотел напечатать данные (div с class = "news_article") с сайта streetinsider.com. Я создал учетную запись, и мне нужно войти в систему, чтобы получить доступ к этим данным.Веб-сайт с записью с использованием логина с использованием Jsoup
Может кто-нибудь объяснить мне, почему этот код не работает? Я много пробовал, но ничего не работает.
public static final String SPLIT_INTERNET_URL = "http://www.streetinsider.com/Special+Dividends?offset=55";
public static final String SPLIT_LOGIN = "https://www.streetinsider.com/login.php";
/**
* @param args the command line arguments
* @throws java.io.FileNotFoundException
* @throws java.io.UnsupportedEncodingException
* @throws java.text.ParseException
* @throws java.lang.ClassNotFoundException
*/
public static void main(String[] args) throws FileNotFoundException, UnsupportedEncodingException, IOException, ParseException, ClassNotFoundException {
// TODO code application logic here
Response res = Jsoup.connect(SPLIT_LOGIN)
.data("loginemail", "XXXXX", "password", "XXXX")
.method(Method.POST)
.execute();
Document doc = res.parse();
Map<String, String> cookies = res.cookies();
Document pageWhenAlreadyLoggedIn = Jsoup.connect(SPLIT_INTERNET_URL).cookies(cookies).get();
Elements elems = pageWhenAlreadyLoggedIn.select("div[class=news_article]");
for (Element elem : elems) {
System.out.println(elem);
}
}
уверен, что предположим, HTTP BASIC AUTH, который не то, что веб-сайт требует. Вам нужно будет получить токен сеанса и обмануть сеанс. –