Вопрос или проблема
Я задаю этот вопрос, потому что сайт AskFM закрывается в конце месяца, и у меня возникают проблемы.
Я использовал askfm Archiver для резервного копирования моего профиля, однако он всегда заканчивается ошибкой 500 сервера где-то в процессе (серверы AskFm нестабильны, то же самое и на сайте).
f:\ast>askfmarchiver.exe -u [username] -a
[03:25:06 INF] Приложение запускается: Архивная служба
885
Прогресс: 5,65% [03:25:37 FTL] Код состояния ответа не указывает на успех: 500 (Внутняя ошибка сервера).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken)
at askfmArchiver.Utils.NetworkManager.HttpRequest(String url)
at askfmArchiver.Parser.GetHtmlDoc(String url)
at askfmArchiver.Parser.GetNextPage(HtmlDocument html)
at askfmArchiver.Parser.ParsePage(HtmlDocument html)
at askfmArchiver.Parser.Parse()
[03:25:37 ERR] Попытка сохранить 75 ответов в базе данных.
[03:25:37 ERR] Успешно сохранено 75 ответов в базе данных.
Я выяснил, что вместо того, чтобы удалять все и начинать с нуля, вы должны быть в состоянии продолжить загрузку, используя опцию -p
(-p
для страницы)
Я пытаюсь продолжить, начиная с 75-й страницы:
f:\ast>askfmarchiver.exe -u [username] -a -p75
[03:25:43 INF] Приложение запускается: Архивная служба
810
[03:25:48 ERR] ParsePage(): articleNodes равны null. html это:
HtmlAgilityPack.HtmlDocument
Прогресс: 100% Завершено анализирование 0 ответов.
[03:25:48 INF] Приложение завершено: Архивная служба
Это неизбежно заканчивается здесь. Что я делаю неправильно?
Ответ или решение
Причины, по которым опция архивации AskFM с продолжением загрузки не работает должным образом, могут быть многообразными и требуют внимательного разбора. Ваша ситуация, когда вы пытаетесь сохранить профиль с помощью инструмента архивации AskFM и сталкиваетесь с ошибкой 500, подчеркивает несколько ключевых факторов, которые могут повлиять на общий процесс.
1. Проблемы на стороне сервера
Ошибки 500 (Internal Server Error) обычно указывают на проблемы на сервере. Поскольку вы упомянули, что серверы AskFM стабильны, это может свидетельствовать о перегрузках из-за большого объема запросов со стороны пользователей, стремящихся скачать свои данные перед закрытием сайта. Первая рекомендация – попытайтесь уменьшить частоту запросов, чтобы избежать проблем с превышением лимитов или временными блокировками.
2. Версия и состояние программного обеспечения
Убедитесь, что вы используете последнюю стабильную версию AskFM Archiver. Если программа устарела, это может привести к несовместимости с текущими изменениями в API AskFM или структуре страницы. Проверьте репозиторий GitHub на предмет обновлений и изменений в коде, которые могли бы исправить существующие ошибки.
3. Неправильное использование параметра -p
Когда вы использовали параметр -p75
, чтобы продолжить работу с 75 страницы, и получили сообщение об ошибке articleNodes are null
, это может означать, что программа не может корректно разобрать HTML-код страницы. Это происходит, если структура страницы изменилась или если на странице нет ни одной записи с указанным номером страницы. Возможно, следует проверить, существует ли страница 75 на сайте, или была ли она удалена.
4. Логи и отладка
Изучение логов, которые программа выводит во время работы (как вы уже сделали), может принести дополнительные подсказки для устранения проблемы. Попробуйте увеличить уровень логирования, если такая возможность предусмотрена, для более глубокого анализа. Логи могут содержать дополнительные сообщения об ошибках, которые помогут выявить причину проблемы.
5. Альтернативные подходы
Если проблема с продолжением загрузки все еще сохраняется, может быть целесообразно начать новый процесс загрузки, но на этот раз с учетом более медленного темпа. Используйте небольшие порции данных и старайтесь дольше выдерживать интервалы между запросами. Это может снизить риски получения ошибок и позволить программе более эффективно собирать данные.
Заключение
К сожалению, такие ситуации, как ваша, могут возникать из-за множества факторов, как программных, так и серверных. Не теряйте надежду, и продолжайте экспериментировать с настройками и различными параметрами. Если все перечисленное выше не помогает, возможно, стоит обратиться за помощью к разработчикам AskFM Archiver или к сообществу пользователей на GitHub для получения дополнительной информации или обходных решений.