Снимок странички по url - C#
Формулировка задачи:
Добрый день!
Может кто подскажет как сделать программно скриншот странички сайта, не используя элемент webbrowser?
Таких страничек ~1000, и если для каждой параллельно создавать webbrowser, загружать страничку, делать скриншот, то по-моему получится какой-то ад.
Программно я уже знаю html сайта, его url, может быть мне с помощью какой-нибудь библиотеки строить из имеющегося html страничку, а потом делать её скриншот?
Заранее спасибо, буду благодарен за любые идеи!
Решение задачи: «Снимок странички по url»
textual
Листинг программы
- using System.Drawing;
- using System.Windows.Forms;
- namespace WindowsFormsApplication
- {
- class WebsiteCaptureMaker
- {
- private WebBrowser internetBrowser;
- public WebsiteCaptureMaker()
- {
- internetBrowser = new WebBrowser();
- internetBrowser.ScrollBarsEnabled = false;
- internetBrowser.ScriptErrorsSuppressed = true;
- }
- public Bitmap MakeScreenshot(string _websiteURL)
- {
- internetBrowser.Navigate(_websiteURL);
- while (internetBrowser.ReadyState != WebBrowserReadyState.Complete || internetBrowser.IsBusy)
- Application.DoEvents();
- internetBrowser.Width = internetBrowser.Document.Body.ScrollRectangle.Width;
- internetBrowser.Height = internetBrowser.Document.Body.ScrollRectangle.Height;
- Bitmap websiteScreenshot = new Bitmap(internetBrowser.Width, internetBrowser.Height);
- internetBrowser.DrawToBitmap(websiteScreenshot, new Rectangle(0, 0, internetBrowser.Width, internetBrowser.Height));
- return websiteScreenshot;
- }
- public void Dispose()
- {
- internetBrowser.Dispose();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д