Skip to content

Утилита командной строки для синтаксического анализа страниц списка вопросов к рубрике «Вопрос-ответ» и сохранением в файл в формате csv или json.

License

Notifications You must be signed in to change notification settings

terratensor/fct-parser

Repository files navigation

Parser страниц вопросов ФКТ-АЛТАЙ

Утилита командной строки для синтаксического анализа страниц списка вопросов к рубрике «Вопрос-ответ» и сохранением в файл в формате csv или json.

Для получения файла с последним обсуждением событий СВОДД в формате csv просто запустите утилиту

./fct-parser 

По умолчанию для удобства чтения в текстовых редакторах из текста файла вырезаются все html теги, но если необходимо получить файл с html тегами, то при вызове утилиты укажите опцию -h

./fct-parser -h 

Для получения всех файлов с обсуждениями событий с начала СВОДД в формате csv запустите утилиту с флагом -a
После запуска утилита последовательно сделает запросы по url адресам из файла конфигурации config.json и сохранит результаты в файлы csv

./fct-parser -a

Для получения списка ссылок с обсуждениями событий с начала СВОДД

./fct-parser -l

Для получения ссылки текущего активного обсуждения событий с начала СВОДД

./fct-parser -с
https://фкт-алтай.рф/qa/question/view-41574

Для получения файла в формате csv с любым вопросом надо передать url страницы, например

./fct-parser https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-35030
2022/11/20 21:27:37 fetching config file https://raw.githubusercontent.com/audetv/fct-parser/main/config.json
2022/11/20 21:27:38 parse https://фкт-алтай.рф/qa/question/view-35030
2022/11/20 21:27:38 всего комментариев 101
2022/11/20 21:27:38 file ./qa-question-view-35030.csv was successful writing

По умолчанию при запуске утилита делает запрос и читает файл конфигурации, расположенный по адресу https://raw.githubusercontent.com/audetv/fct-parser/main/config.json Однако вы можете загрузить файл конфигурации к себе на компьютер и использовать его локально.

./fct-parser -u
2022/11/20 21:35:33 downloading config file config.json

Опции командной строки

  -a, --all                 сохранение всего списка обсуждений событий с начала СВОДД в отдельные файлы
  -c, --current             вывод в консоль адреса ссылки текущего активного обсуждения событий с начала СВОДД
  -e, --early               сохранение предыдущей темы обсуждения
  -h, --html-tags           вывод с сохранение с html тегов
  -j, --json                вывод в формате json (по умолчанию "csv")
  -i, --json-indent         форматированный вывод json с отступами и переносами строк
  -l, --list                вывод в консоль списка адресов страниц с обсуждениями событий с начала СВОДД
  -o, --output string       путь сохранения файлов (default "./parsed-files")
  -p, --page-count string   разобрать указанное кол-во страниц с вопросами https://фкт-алтай.рф/qa/question?page=p (default "0")
  -u, --update              загрузить конфиг файл
 

Примеры

Разбор предыдущей темы обсуждения в формат json с сохранением html тегов и сохранением полученного файла в папку ./site

./fct-parser -e -j -h ./site

Разбор указанного количества страниц вопросов со страницы «Список вопросов» в формате json с сохранением html тегов и сохранением полученных файлов в папку ./site

./fct-parser -p 2 -j -h -o ./site

Получение данных темы форума по-заданному url в формате csv с сохранением в файл qa-question-view-44707.csv

./fct-parser "https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-44707"

Получение данных темы в формате json без отступов и переносов строк с сохранением в файл qa-question-view-44707.csv

./fct-parser -j "https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-44707"

Получение данных темы в формате json с отступами и переносами строк с сохранением в файл qa-question-view-44707.json

./fct-parser -i "https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-44707"

Получение данных нескольких тем по url адресам указанным в командной строке и сохранение каждой темы в отдельный файл

./fct-parser -i "https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-44707" "https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-41574"

Пример вывода при успешном выполнении команды и получении данных по всем заданным ссылкам

2022/11/10 16:40:56 parse https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-44707
2022/11/10 16:40:56 file qa-question-view-44707.json was successful writing
2022/11/10 16:40:58 parse https://xn----8sba0bbi0cdm.xn--p1ai/qa/question/view-41574
2022/11/10 16:40:58 file qa-question-view-41574.json was successful writing
2022/11/10 16:40:58 все запросы выполнены

Для получения всего списка адресов вопросов с обсуждениями

./fct-parser -l
https://фкт-алтай.рф/qa/question/view-44538
https://фкт-алтай.рф/qa/question/view-44612
https://фкт-алтай.рф/qa/question/view-44707
https://фкт-алтай.рф/qa/question/view-44757
https://фкт-алтай.рф/qa/question/view-44883
https://фкт-алтай.рф/qa/question/view-44962
https://фкт-алтай.рф/qa/question/view-45044
https://фкт-алтай.рф/qa/question/view-35650
https://фкт-алтай.рф/qa/question/view-35298
https://фкт-алтай.рф/qa/question/view-4604
https://фкт-алтай.рф/qa/question/view-7533
https://фкт-алтай.рф/qa/question/view-23174
https://фкт-алтай.рф/qa/question/view-37945
https://фкт-алтай.рф/qa/question/view-12422
https://фкт-алтай.рф/qa/question/view-25867
https://фкт-алтай.рф/qa/question/view-14365
https://фкт-алтай.рф/qa/question/view-34312
https://фкт-алтай.рф/qa/question/view-37694
https://фкт-алтай.рф/qa/question/view-7279
https://фкт-алтай.рф/qa/question/view-2656
https://фкт-алтай.рф/qa/question/view-12734
https://фкт-алтай.рф/qa/question/view-3893
https://фкт-алтай.рф/qa/question/view-4910
https://фкт-алтай.рф/qa/question/view-3467
https://фкт-алтай.рф/qa/question/view-21294
https://фкт-алтай.рф/qa/question/view-41574

About

Утилита командной строки для синтаксического анализа страниц списка вопросов к рубрике «Вопрос-ответ» и сохранением в файл в формате csv или json.

Topics

Resources

License

Stars

Watchers

Forks

Packages