Распечатать HTML-страницу в PDF по расписанию

У меня есть HTML-страница, которая использует JavaScript для генерации динамических изображений с помощью обработчика графиков на другом сервере. Изображения будут содержать те же данные за 1 неделю, но они изменятся после истечения 1 недели.

Я пытаюсь найти способ автоматического сохранения содержимого страницы в локальном файле на сервере или записи в файл PDF.

Я пытался использовать "веб-загрузчик", как HTTTrack, но он не получает динамические изображения...

Я запускаю HTML-страницу от IIS.

У меня нет опыта работы с IIS или ASP.

Спасибо!

2 ответа

Решение

Я смог выполнить то, что хотел, используя wkhtmltopdf, чтобы конвертировать мою HTML-страницу с Javascript в PDF. Я выполнил задание через планировщик задач, чтобы в качестве параметров указать URL-адрес своего веб-сайта и имя выходного файла.

Затем я использовал пакетный файл Windows, чтобы проверить, был ли файл создан, а затем переименовал / отправил его по электронной почте заинтересованным сторонам.

Это, конечно, требует, чтобы у вас была возможность установить wkhtmltopdf на ваш сервер.

Я не уверен, что вижу какой-либо способ сделать это напрямую с внешнего интерфейса автоматически. Проблема в том, что любой "скребок экрана", с которым вы выходите и захватываете сайт, должен запускать javascript для получения таблиц, а я не вижу, как работают многие такие системы. Это частично, почему вы видите странность на Archive.org, когда у вас есть сайт, который сильно дополнен JavaScript или Flash.

В этом стековом вопросе была опубликована непроверенная концепция, которую вы могли бы попробовать

Я мог видеть какую-то систему, которую вы устанавливаете вместе с другим компьютером, который планирует загрузку браузера, а затем каким-то образом печатает в.pdf. Мне не удалось найти какое-либо конкретное программное обеспечение, которое бы автоматизировало этот процесс, так что вам пришлось бы самостоятельно создавать такую ​​систему.

Очевидно, у вас есть данные для создания ваших динамических изображений. Я мог бы придумать самый многофункциональный способ - использовать систему, такую ​​как Jasper Reports или Crystal Reports, с помощью которой вы могли бы передавать свои данные, реплицировать отчет и легко выводить через pdf, встроенный экспорт в обе системы.

Возможно, стоит поставить под сомнение вашу конечную цель. Для меня создание "снимка" релевантных данных в другой таблице и использование другой системы для визуализации ваших графиков на основе данных снимка кажется гораздо более ценным, чем просто печать экрана. Затем вы можете вернуться и скорректировать данные по мере необходимости или использовать их для других целей отчетности, экспортируя их в любое количество инструментов, даже таких простых, как Access. Черт, через 10 лет вы можете захотеть, чтобы данные выглядели лучше, чем графическая система, которую вы используете в настоящее время, и у вас будут данные для их отображения любым удобным вам способом. Когда вице-президент по маркетингу приходит на поиски своих чисел, простой щелчок выведет те цифры, которыми можно будет манипулировать по мере необходимости.

Другие вопросы по тегам