Я пытаюсь загрузить все изображения из там . Для этого у меня есть:
private static void GetRenderedWebPage(string url, TimeSpan waitAfterPageLoad, Action<string> callBack)
{
const string cEndLine = "All output received";
var sb = new StringBuilder();
var p = new PhantomJS();
p.OutputReceived += (sender, e) =>
{
if (e.Data == cEndLine)
{
callBack(sb.ToString());
}
else
{
sb.AppendLine(e.Data);
}
};
p.RunScript(@"
var page = require('webpage').create();
page.viewportSize = { width: 1920, height: 1080 };
page.onLoadFinished = function(status) {
if (status=='success') {
setTimeout(function() {
console.log(page.content);
console.log('" + cEndLine + @"');
phantom.exit();
}," + waitAfterPageLoad.TotalMilliseconds + @");
}
};
var url = '" + url + @"';
page.open(url);", new string[0]);
}
}
И с его помощью:
var htmlDocument = new HtmlDocument();
try
{
GetRenderedWebPage(link, TimeSpan.FromSeconds(0), output =>
{
File.WriteAllText("output.txt", output);
htmlDocument.LoadHtml(output);
});
}
catch ()
{
Console.WriteLine("an error has occured.");
}
Но страница загружается не полностью. Я получаю максимум 60 изображений, но страница содержит около 160. Как это исправить?