У меня есть статья Википедии, и я хочу получить первые строки z (или первые х-символы или первые слова y, не имеет значения) из статьи.
Проблема: я могу получить либо исходный Wiki-текст (через API), либо разобранный HTML (через прямой HTTP-запрос, в конце концов, в печатной версии), но как я могу найти первые строки, отображаемые? Нормальный источник (как html, так и wikitext) начинается с информационных полей и изображений, и первый реальный текст для отображения находится где-то в коде.
Например: Альберт Эйнштейн в Википедии (версия для печати). Посмотрите в коде первую строку в реальном тексте "Альберт Эйнштейн (произносится/ælbərt aɪnstaɪn/; German: [albɐt aɪ̯nʃtaɪ̯n], 14 марта 1879-18 апреля 1955 года) был физиком-теоретиком". не в самом начале. То же самое относится к Wiki-Source, он начинается с того же информационного окна и т.д.
Итак, как бы вы выполнили эту задачу? Язык программирования - java, но это не имеет значения.
Решением, которое пришло мне в голову, было использование запроса xpath, но этот запрос был бы довольно сложным для обработки всех пограничных случаев. [update] Это было не так сложно, см. мое решение ниже! [/update]
Спасибо!