Снимок странички по url - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день! Может кто подскажет как сделать программно скриншот странички сайта, не используя элемент webbrowser? Таких страничек ~1000, и если для каждой параллельно создавать webbrowser, загружать страничку, делать скриншот, то по-моему получится какой-то ад. Программно я уже знаю html сайта, его url, может быть мне с помощью какой-нибудь библиотеки строить из имеющегося html страничку, а потом делать её скриншот? Заранее спасибо, буду благодарен за любые идеи!

Решение задачи: «Снимок странички по url»

textual
Листинг программы
  1. using System.Drawing;
  2. using System.Windows.Forms;
  3.  
  4. namespace WindowsFormsApplication
  5. {
  6.     class WebsiteCaptureMaker
  7.     {
  8.         private WebBrowser internetBrowser;
  9.  
  10.         public WebsiteCaptureMaker()
  11.         {
  12.             internetBrowser = new WebBrowser();
  13.             internetBrowser.ScrollBarsEnabled = false;
  14.             internetBrowser.ScriptErrorsSuppressed = true;
  15.         }
  16.  
  17.         public Bitmap MakeScreenshot(string _websiteURL)
  18.         {
  19.             internetBrowser.Navigate(_websiteURL);
  20.             while (internetBrowser.ReadyState != WebBrowserReadyState.Complete || internetBrowser.IsBusy)
  21.                 Application.DoEvents();
  22.  
  23.             internetBrowser.Width = internetBrowser.Document.Body.ScrollRectangle.Width;
  24.             internetBrowser.Height = internetBrowser.Document.Body.ScrollRectangle.Height;
  25.  
  26.             Bitmap websiteScreenshot = new Bitmap(internetBrowser.Width, internetBrowser.Height);
  27.             internetBrowser.DrawToBitmap(websiteScreenshot, new Rectangle(0, 0, internetBrowser.Width, internetBrowser.Height));
  28.  
  29.             return websiteScreenshot;
  30.         }
  31.  
  32.         public void Dispose()
  33.         {
  34.             internetBrowser.Dispose();
  35.         }
  36.     }
  37. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.417 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут