Экспорт статей Хабра в html, markdown

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

До меня было написано 4 статьи по экспорту статей с хабра в FB2 и pdf:


  • Экспорт избранного Хабра в FB2
  • Экспорт избранного Хабра в FB2 — скоростная PHP-версия
  • Экспорт Хабра в FB2
  • Экспорт Избранного на Хабре в PDF

Я же хотел получить исходники своих статей. Поскольку для написания на хабре я пользуюсь старым редактором и пишу в markdown, то и основная цель была получить исходник markdown. HTML пошел прицепом, т.к. статьи с хабра получаю в нем, а затем с помощью библиотеки markdownify и некоторых танцев с бубном получаю md.


Как пользоваться


Скрипт написан на python, скачиваем с github, устанавливаем зависимости и запускаем:


apt-get install python3-lxml
pip3 install -r requirements.txt
git clone https://github.com/dvjdjvu/habrArticleSrcDownloader
cd habrArticleSrcDownloader
./src/main.py jessy_james

Вместо jessy_james подставить имя нужного пользователя. Взять его можно из ссылки профиля:



После запуска получаем такую картину:


./src/main.py jessy_james
[info]: Скачивается: C/C++ из Python (ctypes) на Android
[info]: Директория: 16 C C++ из Python (ctypes) на Android создана
[info]: Директория: picture создана
[info]: Статья: C C++ из Python (ctypes) на Android сохранена
[info]: Скачивается: Своя docking station для ноутбука
[info]: Директория: 15 Своя docking station для ноутбука создана
[info]: Директория: picture создана
[info]: Статья: Своя docking station для ноутбука сохранена
[info]: Скачивается: Tango Controls hdbpp-docker
[info]: Директория: 14 Tango Controls hdbpp-docker создана
[info]: Директория: picture создана

...

[info]: Скачивается: Игрушка ГАЗ-66 на пульте управления. Часть 2
[info]: Директория: 2 Игрушка ГАЗ-66 на пульте управления. Часть 2 создана
[info]: Директория: picture создана
[info]: Статья: Игрушка ГАЗ-66 на пульте управления. Часть 2 сохранена
[info]: Скачивается: Игрушка ГАЗ-66 на пульте управления. Часть 1
[info]: Директория: 1 Игрушка ГАЗ-66 на пульте управления. Часть 1 создана
[info]: Директория: picture создана
[info]: Статья: Игрушка ГАЗ-66 на пульте управления. Часть 1 сохранена

Статьи скачиваются от последней написанной к первой.
Иерархия каталога статей будет такой:



Создается папка article, далее папка с именем пользователя, далее папки с названиями статей. В папке со статьей будет два файла (.md и .html) и папка с картинками статьи.



Смотрим что получилось, берем содержимое полученного файла markdown и вставляем в редактор статей:



Почти работает как я хотел ;), есть некоторые проблемы с отображением изображений (исходник html отображает правильнее). Постараюсь их исправить.


Спасибо за внимание.


Ссылки


  • Исходный код скрипта
Источник: https://habr.com/ru/post/665254/


Интересные статьи

Интересные статьи

В этой статье мы популярно объясняем на собственном опыте как организовать массовую выгрузку, обработку и загрузку фотографий товаров из Bitrix, используя Python и минимальное количество SQL. Для проч...
В этом выпуске: 00:35 «Тинькофф» поставил конкурентам «шах и мат» и упал 06:39 Минфин предложил снизить порог беспошлинного ввоза интернет-покупок до 20 евро 11:58 В офисе Nginx проходят о...
Те, кто собираются открывать интернет-магазин, предварительно начитавшись в интернете о важности уникального контента, о фильтрах, накладываемых поисковиками за копирование материалов с других ресурсо...
В 2019 году люди знакомятся с брендом, выбирают и, что самое главное, ПОКУПАЮТ через интернет. Сегодня практически у любого бизнеса есть свой сайт — от личных блогов, зарабатывающих на рекламе, до инт...
Реализация ORM в ядре D7 — очередная интересная, перспективная, но как обычно плохо документированная разработка от 1с-Битрикс :) Призвана она абстрагировать разработчика от механики работы с табл...