Добрый день, прошу помочь в моем вопросе. Имеем ключевые слова по ним нужно собрать текстовые блоки >1000 символов. Как я думаю логика такова: 1. Вначале по ключам парсим выдачу (например 100 результатов) 2. Сохраняем все это дело в формате ($query - $p1.preset) итого получится в файле ключевое слово + 100 ссылок. 3. Запускаем HTML::TextExtractor и че тут делать я уже не знаю - но на выходе я должен получить <title>$query</title> <p>текст длиной 500</p> <p>текст длиной 500</p> <p>текст длиной 500</p> т.е. изначальный ключ который мы парсили по первому парсеру и несколько абзацев текста. И еще проблема в том что ключей много и на выходе первого парсера получится 1 кей = 1 файл, и как после этого работать со вторым парсером с таким количеством файлов я не знаю. Спасибо.
Добрый день. На первом этапе используйте такой формат результата: Код: $p1.serp.format('$query;$link\n') А дальше сделайте как на скрине, указав в качестве файла запросов файл, полученный на первом этапе: Спойлер: Код для импорта Код: eyJwcmVzZXQiOiJkZWZhdWx0IiwidmFsdWUiOnsicHJlc2V0IjoiZGVmYXVsdCIs InBhcnNlcnMiOltbIkhUTUw6OlRleHRFeHRyYWN0b3IiLCJkZWZhdWx0Iix7InR5 cGUiOiJvdmVycmlkZSIsImlkIjoibWluYmxvY2tsZW5ndGgiLCJ2YWx1ZSI6IjEw MDAifSx7InR5cGUiOiJvdmVycmlkZSIsImlkIjoiZm9ybWF0cmVzdWx0IiwidmFs dWUiOiIkdGV4dHMuZm9ybWF0KCc8cD4kdGV4dDwvcD5cXG4nKSJ9LHsidHlwZSI6 Im92ZXJyaWRlIiwiaWQiOiJxdWVyeWZvcm1hdCIsInZhbHVlIjoiJHF1ZXJ5Lmxp bmsifV1dLCJyZXN1bHRzRm9ybWF0IjoiJHAxLnByZXNldCIsInJlc3VsdHNTYXZl VG8iOiJmaWxlIiwicmVzdWx0c0ZpbGVOYW1lIjoidGV4dHMvJHtxdWVyeS5rZXl9 LnR4dCIsImFkZGl0aW9uYWxGb3JtYXRzIjpbXSwicmVzdWx0c1VuaXF1ZSI6Im5v IiwicXVlcnlGb3JtYXQiOlsiJHF1ZXJ5Il0sInVuaXF1ZVF1ZXJpZXMiOmZhbHNl LCJzYXZlRmFpbGVkUXVlcmllcyI6ZmFsc2UsIml0ZXJhdG9yT3B0aW9ucyI6eyJv bkFsbExldmVscyI6ZmFsc2UsInF1ZXJ5QnVpbGRlcnNBZnRlckl0ZXJhdG9yIjpm YWxzZX0sInJlc3VsdHNPcHRpb25zIjp7Im92ZXJ3cml0ZSI6ZmFsc2V9LCJkb0xv ZyI6Im5vIiwia2VlcFVuaXF1ZSI6Ik5vIiwibW9yZU9wdGlvbnMiOmZhbHNlLCJy ZXN1bHRzUHJlcGVuZCI6IiIsInJlc3VsdHNBcHBlbmQiOiIiLCJxdWVyeUJ1aWxk ZXJzIjpbeyJzb3VyY2UiOiJxdWVyeSIsInR5cGUiOiJzdHJpbmdTcGxpdCIsInNl cGFyYXRvciI6IjsiLCJ0byI6WyJrZXkiLCJsaW5rIl19XSwicmVzdWx0c0J1aWxk ZXJzIjpbXSwiY29uZmlnT3ZlcnJpZGVzIjpbXX19 В результате в папке texts вы получите на каждый ключ по файлу, внутри которых будут все текстовые блоки >1000 символов. ИЛИ Спойлер: Код для импорта Код: eyJwcmVzZXQiOiJkZWZhdWx0IiwidmFsdWUiOnsicHJlc2V0IjoiZGVmYXVsdCIs InBhcnNlcnMiOltbIkhUTUw6OlRleHRFeHRyYWN0b3IiLCJkZWZhdWx0Iix7InR5 cGUiOiJvdmVycmlkZSIsImlkIjoibWluYmxvY2tsZW5ndGgiLCJ2YWx1ZSI6IjEw MDAifSx7InR5cGUiOiJvdmVycmlkZSIsImlkIjoiZm9ybWF0cmVzdWx0IiwidmFs dWUiOiI8dGl0bGU+JHF1ZXJ5LmtleTwvdGl0bGU+XFxuJHRleHRzLmZvcm1hdCgn PHA+JHRleHQ8L3A+XFxuJykifSx7InR5cGUiOiJvdmVycmlkZSIsImlkIjoicXVl cnlmb3JtYXQiLCJ2YWx1ZSI6IiRxdWVyeS5saW5rIn1dXSwicmVzdWx0c0Zvcm1h dCI6IiRwMS5wcmVzZXQiLCJyZXN1bHRzU2F2ZVRvIjoiZmlsZSIsInJlc3VsdHNG aWxlTmFtZSI6IiRkYXRlZmlsZS5mb3JtYXQoKS50eHQiLCJhZGRpdGlvbmFsRm9y bWF0cyI6W10sInJlc3VsdHNVbmlxdWUiOiJubyIsInF1ZXJ5Rm9ybWF0IjpbIiRx dWVyeSJdLCJ1bmlxdWVRdWVyaWVzIjpmYWxzZSwic2F2ZUZhaWxlZFF1ZXJpZXMi OmZhbHNlLCJpdGVyYXRvck9wdGlvbnMiOnsib25BbGxMZXZlbHMiOmZhbHNlLCJx dWVyeUJ1aWxkZXJzQWZ0ZXJJdGVyYXRvciI6ZmFsc2V9LCJyZXN1bHRzT3B0aW9u cyI6eyJvdmVyd3JpdGUiOmZhbHNlfSwiZG9Mb2ciOiJubyIsImtlZXBVbmlxdWUi OiJObyIsIm1vcmVPcHRpb25zIjpmYWxzZSwicmVzdWx0c1ByZXBlbmQiOiIiLCJy ZXN1bHRzQXBwZW5kIjoiIiwicXVlcnlCdWlsZGVycyI6W3sic291cmNlIjoicXVl cnkiLCJ0eXBlIjoic3RyaW5nU3BsaXQiLCJzZXBhcmF0b3IiOiI7IiwidG8iOlsi a2V5IiwibGluayJdfV0sInJlc3VsdHNCdWlsZGVycyI6W10sImNvbmZpZ092ZXJy aWRlcyI6W119fQ== В этом случае вы получите один файл, в котором будет выведен ключ и текстовые блоки для каждой полученной ссылки.
Добрый день! А подскажите, как составить задание на парсинг контента в таком виде(входящие query будут ссылки на страницу, все страницы состоят из <h2></h2> и <p></p>): Титл; meta description; meta keywords; h2, тексты к нему <p></p>(их может быть несколько) и ключи <strong></strong>; следующие h2 и тексты к нему <p></p> и т.д. И вывод результатов в таблицу: Урл(query); титл; meta description; meta keywords; h2, тексты к нему <p></p>(их может быть несколько) и ключи <strong></strong>; следующие h2, тексты к нему <p></p> и и ключи <strong></strong>; т.д. все тексты со страницы.
Добрый день. Используйте Net::HTTP и регулярные выражения для каждого элемента. Плюс формируйте результат, выводя результаты в нужной последовательности.
Посмотрите, делаю так, но я так понимаю у меня есть ошибки, т.к. результат "Nope". Не знаю как вывести нормально результат(в эксель), если конечно результат будет. Также, в переменных text, h2 и key должны быть массивы или я не прав?
Чтобы они были - выберите флаг g. Подробнее о регулярках в А-Парсере: http://a-parser.com/wiki/regex/ 1) Формат результата должен быть один. Например: Код: $title;$texts.format('$text|');$h2s.format('$h2|');$keys.format('$key|')\n Детальнее о результатах в А-Парсере: http://a-parser.com/wiki/results-representation/, http://a-parser.com/wiki/result-format/ 2) Расширение файла измените на csv
Переделал, теперь пустой результат(в каждой строке только знаки разделителей ";;;;"), но уже не "nope") Подскажите, хочу сделать рабочий шаблон.
Почитайте еще раз внимательно Документацию и то, что я написал. Формат результат должен быть один, хотя в том случае, что на последнем скрине, это ни на что не повлияет. Если вы задаете шаблон в Общем формате результата, то нужно ссылаться на парсер. В вашем случае шаблон для Общего формата результата будет выглядеть так: Код: $p1.title;$p1.texts.format('$text|');$p1.h2s.format('$h2|');$p1.keys.format('$key|')\n