Добрый день! Хочу спарсить статьи с вебархива, урлы постов уже умеются. Использовался пресет отсюда: https://a-parser.com/threads/1822/ Все вышло, но задавать критерий по количетсву символов мне не подходит, так как текст в постах разного обьема, и не всегда выходит корректный результат. По этому хочу спарсить все со страницы что между такими тегами: <div class="postmeta2"> дальше парсить весь текст что идет после тега, вместе с разметкой страницы <div class="postmeta3"> Вопрос заключается в том как правильно прописать регулярное выражение на парсинг текста между этими тегами? Или может есть более удачный вариант? В идеале нужно получить текстовые файлы постов с разметкой для их дальнейшей заливки через зеброид. Заранее благодарю за ответ!
Добрый день. Если я правильно понял, Вам нужно забирать на странице не только текст, но и разметку. Используйте следующий параметр: Регулярное выражение которое будет забирать весь исходный код будет иметь приблизительно такой вид <начальный тег>(.+?)<конечный тег> - забирает весь исходный код, между тегами и помещает в переменную. Для забора всех совпадений, используйте в регулярке флаг "g". Сохраняйте отобранный контент в текстовый файл под названием исходного запроса, через переменную $query.orig.txt
Поднятие поста из прошлого. Этот пресет работает хорошо, а вот вопрос как разбить текст и сохранять его по иному. Сам текст. "Независимая оценка зданий Наша компания предлагает качественные услуги по оценке коммерческой недвижимости. Все услуги выполняются опытными компетентными специалистами. Мы работаем быстро, слаженно, в соответствии с существующими законами, стандартами и правилами, учитывая постоянные изменения. Одно из направлений в этой сфере — оценка зданий и сооружений. На сегодняшний день это одна из самых востребованных услуг на рынке. Конкуренция в оценке зданий велика и следовательно качество нашей работы на высшем уровне" сохранять должно вот так Независимая оценка оценка зданий зданий Наша Наша компания компания предлагает предлагает качественные качественные услуги услуги по по оценке оценке коммерческой Варианты сохранение фразы по 2,3,4,5 слова? с переносом на новую строку.
Это можно сделать шаблонизатором. Алгоритм такой: разбиваем текст на слова регуляркой и выводим из полученного массива по два слова. Спойлер: Шаблон Код: [% text = "Независимая оценка зданий Наша компания предлагает качественные услуги по оценке коммерческой недвижимости. Все услуги выполняются опытными компетентными специалистами. Мы работаем быстро, слаженно, в соответствии с существующими законами, стандартами и правилами, учитывая постоянные изменения. Одно из направлений в этой сфере — оценка зданий и сооружений. На сегодняшний день это одна из самых востребованных услуг на рынке. Конкуренция в оценке зданий велика и следовательно качество нашей работы на высшем уровне"; words = text.match('\b(\w+)\b', 1); max = words.size - 1; FOREACH i IN [1..max]; p = i - 1; words.$p _ ' ' _ words.$i _ "\n"; END %] По аналогии можно сделать вывод нужного количества слов в строке.