Skip to content

Instantly share code, notes, and snippets.

@amaitland
Created May 24, 2018 03:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save amaitland/52831ce341f65554540d91eba951bebe to your computer and use it in GitHub Desktop.
Save amaitland/52831ce341f65554540d91eba951bebe to your computer and use it in GitHub Desktop.
Fullpage screenshot PuppeteerSharp
const string versionUrl = "http://127.0.0.1:8088/json/version";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(versionUrl);
request.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
using (HttpWebResponse response = (HttpWebResponse)await request.GetResponseAsync())
using (Stream stream = response.GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
var body = await reader.ReadToEndAsync();
var entity = JObject.Parse(body);
var url = entity.GetValue("webSocketDebuggerUrl").ToString();
var browser = await Puppeteer.ConnectAsync( new ConnectOptions { BrowserWSEndpoint = url, SlowMo = 0 });
var pages = await browser.PagesAsync();
var pageOne = pages[0];
await pageOne.GoToAsync("http://github.com");
await pageOne.ScreenshotAsync("test.png", new ScreenshotOptions { FullPage = true });
await browser.CloseAsync();
}
@amaitland
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment