Парсинг динамически изменяющейся страницы
Цена договорная
Необходимо сделать аналог "Экспорт истории чата" только в Telegram Web для закрытого чата.
Мои соображения:
1) Фактически нужно сохранить содержимое контейнера <div class="Transition">. Только в текущий момент времени в нём содержится не все сообщения, а примерно 80, а по мере прокрутки окна, в этот контейнер подгружаются новые сообщения, старые удаляются.
Поэтому нужно сохранять текущее содержимое, затем инициировать прокрутку окна, и далее сохранять новые сообщения.
Сохраняем все сообщения, в том числе служебные.
2) Весь контент на который сделаны ссылки, скачать и изменить ссылку на локальную, на загруженный файл.
Если ссылка сделана в тексте в явном виде в тексте, добавить всплывающую подсказку с оригинальной ссылкой.
Контент - это в том числе смайлики, аватарки.
Я заметил что ссылки генерируются с хешем, вроде такой blob:https://web.telegram.org/a9932849-4f33-4cbb-a354-b... и имеет срок жизни. То есть, сначала нужно сохранить контент, а затем инициировать прокрутку окна.
3) Было бы отлично если бы сделано в виде расширения, то есть не нужно было бы предоставлять программе пароль от telegram.
Мои соображения:
1) Фактически нужно сохранить содержимое контейнера <div class="Transition">. Только в текущий момент времени в нём содержится не все сообщения, а примерно 80, а по мере прокрутки окна, в этот контейнер подгружаются новые сообщения, старые удаляются.
Поэтому нужно сохранять текущее содержимое, затем инициировать прокрутку окна, и далее сохранять новые сообщения.
Сохраняем все сообщения, в том числе служебные.
2) Весь контент на который сделаны ссылки, скачать и изменить ссылку на локальную, на загруженный файл.
Если ссылка сделана в тексте в явном виде в тексте, добавить всплывающую подсказку с оригинальной ссылкой.
Контент - это в том числе смайлики, аватарки.
Я заметил что ссылки генерируются с хешем, вроде такой blob:https://web.telegram.org/a9932849-4f33-4cbb-a354-b... и имеет срок жизни. То есть, сначала нужно сохранить контент, а затем инициировать прокрутку окна.
3) Было бы отлично если бы сделано в виде расширения, то есть не нужно было бы предоставлять программе пароль от telegram.
Отзывы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.
Получил программу которая:
1) Не выпадает в ошибку только на тестовом чате.
2) Из 16 согласованных требований - не выполнено 4.
3) На реальном задании программа выпадает в ошибку.
То есть, оплата есть, а результата нет.
Ошибка вот такая вот:
UnicodeEncodeError: 'utf-8' codec can't encode character '\ud83c' in position 4958934: surrogates not allowed
По этой ошибке своевременно предоставлена обратная связь в полном объёме.
По состоянию на 4 февраля 2025 ошибка не исправлена.
Исполнитель отказался возвращать деньги или доделать программу.
P.S. информация как обработать такую ошибку и даже рабочий код который обрабатывает подобные недопустимые символы которые не может кодировать кодек, можно нагуглить за 1 минуту. Но это же не моя забота учить исполнителя программированию.