как разобрать для конкретного текста? - PullRequest
0 голосов
/ 18 сентября 2011

Я хочу использовать jsoup просто для разбора среднего текста, рассказывающего вам о заголовке.

http://www.upcominggames.com/2113/Halo+Combat+Evolved+Anniversary/ http://www.upcominggames.com/478/Gears+of+War+3/

Какими будут теги jsoup для анализа этогои извлечь только статью?

Каким будет общий селектор для двух статей выше?

РЕДАКТИРОВАТЬ:

Что я хочу сделать, это разобрать эту часть

Gears of War 3: факты
Gears of War 3 - это шутер от третьего лица, выпущенный Microsoft и разработанный Epic Games, который должен быть выпущен 20 сентября 2011 года в США, Австралии и Европе, а также22 сентября в Японии.

Gears of War 3 Краткий обзор
Этот эксклюзивный вывод Xbox 360 к трилогии Gears of War, Gears of War 3, помещает игроков в центр захватывающегоопыт и история выживания, надежды и братства.Этот шутер от третьего лица приводит игроков в захватывающий мир с большим количеством цветов и деталей, чем когда-либо прежде.Плюс, его захватывающий многопользовательский режим заставит игроков хотеть большего даже после того, как они закончат кампанию.

Геймплей Gears of War 3
Любой, кто играл в игру Gears of War, будетчувствовать себя знакомым, когда они играют в Gears of War 3, но это не значит, что они не столкнутся с несколькими новыми удивленными.Окружающая среда гораздо более детальная и захватывающая, что добавляет азарта и острых ощущений известной франшизе Gears of War.Обладая большим количеством врагов, чем в предыдущих выпусках серии Gears of War, Gears of War 3 предложит игрокам новый вызов, пытаясь спасти человечество от полного уничтожения.Если у игроков есть 3D-телевизор, они смогут играть в эту новую часть в 3D, чтобы получить совершенно захватывающий опыт.

Gears of War 3 Мультиплеер
Многопользовательские дополнения кGears of War 3 делает игру большим шагом по сравнению с Gears of War 2. Начиная с выделенных серверов для ведения матчей, Epic Games приложила немало усилий для того, чтобы сделать это лучшим игровым опытом из пока что.С помощью Capture the Leader, King of the Hill и других многопользовательских режимов игроки смогут вести свою игру онлайн с другими игроками в захватывающих смертельных матчах.

Я хочу разобрать жирный шрифт в отдельный текстовый вид, а затем под нимЯ хочу загрузить его содержимое.В основном только то, как это выше.

Если вы подсвечиваете текст и нажимаете кнопку просмотра источника выбора, вы увидите, что я пытаюсь проанализировать

Я знаком с jsoup.Просто нужна помощь в этой части.

Ответы [ 2 ]

2 голосов
/ 18 сентября 2011

Да, я понимаю, что вы говорите.Я думаю, что Jsoup легко извлечет это, если вы изучите исходный код веб-страницы и найдете общие теги и атрибуты ссылок.Попробуйте:

  • получите элементы с тегом "div"
  • атрибут "id", которому присвоен "game-desc"

Текст, возвращенный только этими двумя фильтрами, скорее всего, даст вам то, что вы хотите.

например,

Редактировать: упрощенный код для использования select (...)

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

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

public class HaloStuff {
   private static final String TEST_URL_1 = "http://www.upcominggames.com/" +
        "2113/Halo+Combat+Evolved+Anniversary/";
   private static final String DIV_TAG = "div";
   private static final String ID_ATTR = "id";
   private static final String GAME_DESC = "game-desc";

   public static void main(String[] args) {
      Document jsDoc = null;

      List<String> textList = new ArrayList<String>();

      try {
         jsDoc = Jsoup.connect(TEST_URL_1).get();

         Elements textEles = jsDoc.select("div[id=game-desc]");
         for (Element ele : textEles) {
            System.out.println(ele.text());
         }

      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}
2 голосов
/ 18 сентября 2011

Вы должны быть в состоянии сделать это с:

div#game-desc p

Что вы пробовали, что не работает?

...