public CrawledPage MakeRequest(Uri uri) { var result = new CrawledPage(uri) { RequestStarted = DateTime.UtcNow, DownloadContentStarted = DateTime.UtcNow }; AwesomiumContainer container = null; try { container = _awesomiumWorkerPool.GetInstance(); DownloadedPage page = container.Download(uri.ToString()); result.Content = new PageContent { Text = page.Html }; } finally { _awesomiumWorkerPool.ReleaseInstance(container); result.RequestCompleted = DateTime.UtcNow; result.DownloadContentCompleted = DateTime.UtcNow; } return(result); }
public void Dispose() { _awesomiumWorkerPool.Dispose(); AwesomiumContainer.ShutdownDeadProcesses(); }
static AwesomiumPageRequester() { AwesomiumContainer.ShutdownDeadProcesses(); }