Это утилита Python3 для архивирования интерактивных историй с письма.com.
Архивирование истории будет загружать каждую главу из этой истории в ./archive/<story_id>/
как набор файлов HTML просмотра, которые вы можете открыть в своем браузере. Обновление истории загружает любые новые главы в архив.
Использование командной строки:
$ cd <path-to-source>
$ pip install -r requirements.txt # Install dependencies
$ chmod +x run.py # If the following commands do not work
$ ./run.py get <id1> <id2>... # Downloads or updates interactives with item_ids <id1>, <id2>...
$ ./run.py get_search "<url1>" "<url2>"... # Downloads every interactive in these search results. See note below.
$ ./run.py update # Update existing archives
Item_id для истории находится в его URL: http://www.writing.com/main/interact/item_id/$(THIS_IS_THE_ITEM_ID)/map/14411122
Чтобы получить правильный URL, сначала введите свой поисковый термин в текстовое поле в левом верхнем углу страницы и нажмите Enter (или нажмите на увеличительное стекло). Вас попадут на страницу результатов поиска. На этой странице вы увидите свой поисковый термин в верхнем центре. Справа от этого выпадает, который по умолчанию говорит «вещи для чтения». На этом раскрывающемся списке выберите «Interactives», а затем нажмите кнопку «Go» прямо под ним. Все результаты теперь должны быть только взаимодействующими. Наконец, щелкните значок увеличительного стекла чуть выше результатов, чтобы переделать поиск. Теперь ваш URL находится в правильной форме для get_search. Не забудьте процитировать это с «».
Редактировать config.yaml сначала с вашим именем пользователя и паролем для входа в систему
Python3 и пакеты в requirements.txt
требуется.
Вы можете столкнуться с ошибками, пытаясь скачать истории. Если ошибка не сбивает утилиту, я предлагаю попытаться загрузить ее снова, так как некоторые ошибки преходящие. Но дайте мне знать, с какой истории/главой у вас были проблемы, и я посмотрю, что я могу сделать.
Если ошибка вылетает утилиту, я предлагаю снова войти в систему. Лучший сценарий случая либо ваш логин был неудачным, либо witch.com решил прекратить служить вашей сессии. Удалить session
(не session.py
!), И вам снова попросят ваши учетные данные. Обратите внимание, что он не скажет вам, был ли логин успешным или нет. Если это все еще терпит неудачу, дайте мне знать.
Эта утилита также может быть запущена в контейнере. Контейнер обрабатывает установку всех необходимых зависимостей для запуска утилиты.
$ cd < path-to-source >
$ docker-compose build
$ docker-compose run writing.com-archival
# After running the above commands, the command line arguments stay the same.
root@writing-com-archival:/code# ./run.py get < id 1> < id 2> ... # Downloads or updates interactives with item_ids <id1>, <id2>...
root@writing-com-archival:/code# ./run.py get_search " <url1> " " <url2> " ... # Downloads every interactive in these search results. See note below.
root@writing-com-archival:/code# ./run.py update # Update existing archives
docker-compose build
-эта команда будет использовать файл docker-compose.yml для построения контейнера, определенного внутри Dockerfile. docker-compose run writing.com-archival
-эта команда будет использовать файл Docker-compose.yml для интерактивного запуска контейнера. Не используйте GIT для Bash, чтобы запустить эту команду.