Я просмотрел несколько сообщений о разборе и т. Д. Большинство ответов, которые я видел, рекомендовали человеку использовать библиотеку или что-то еще. Моя проблема прямо сейчас заключается в создании алгоритма, который будет получать точную информацию, которую я хочу. Моя цель состоит в том, чтобы получить 2 статуса с веб-сайта Weather для закрытия школ. Я начал использовать Jsoup по рекомендации кого-то, но мне нужна помощь.Java чтение информации с веб-сайта с помощью Jsoup
WEB-страница: Click here
Изображение: Click here
Пример источника веб-страницы: click here
Я мог бы понять, как получить определенную строку текста в веб-страницы, так как я уже знаю имя школы, которую я ищу, но 2 линии вниз - это тот статус, который мне нужен. было бы легко, если бы каждая школа имела определенный статус, но все они либо закрыты, либо двухчасовая задержка, поэтому я не могу просто поискать это. Я хочу несколько идей или ответов о том, как я могу это утверждать. Я собираюсь сделать это 2 раза, потому что я хочу искать 2 школы. У меня уже есть имена, которые я могу использовать для их поиска. Мне просто нужен статус.
Вот пример того, что я хочу сделать. (Судо код)
Document doc = connect(to url);
Element schoolName1 = doc.lookForText(htmlLineHere/schoolname);
String status1 = schoolName.getNext().text();//suppose this gets the line right after which should be my status and then cleans off the Html.
Это то, что я прямо сейчас
public static SchoolClosing lookupDebug() throws IOException {
final ArrayList<String> Status = new ArrayList<String>();
try {
//connects to my wanted website
Document doc = Jsoup.connect("http://www.10tv.com/content/sections/weather/closings.html").get();
//selects/fetches the line of code I want
Element schoolName = doc.html("<td valign="+"top"+">Athens City Schools</td>");
//an array of Strings where I am going to add the text I need when I get it
final ArrayList<String> temp = new ArrayList<String>();
//checking if its fetching the text
System.out.println(schoolName.text());
//add the text to the array
temp.add(schoolName.text());
for (int i = 0; i <= 1; i++) {
final String[] tempStatus = temp.get(i).split(" ");
Status.add(tempStatus[0]);
}
} catch (final IOException e) {
throw new IOException("There was a problem loading School Closing Status");
}
return new SchoolClosing(Status);
}
Любая помощь поможет! – Yuriah
все люди, задающие вопросы здесь, хотели бы оказать какую-то помощь своей проблеме. Не нужно кричать. – eis
Прошу прощения, это то, что он не получил никакого внимания, и я опубликовал это вчера. – Yuriah