using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using HtmlAgilityPack;
namespace sss
{
public class Downloader
{
WebClient client = new WebClient();
public HtmlDocument FindMovie(string Title)
{
//This will be implemented later on, it will search movie.
}
public HtmlDocument FindKnownMovie(string ID)
{
HtmlDocument Page = (HtmlDocument)client.DownloadString(String.Format("http://www.imdb.com/title/{0}/", ID));
}
}
}
How can I convert a downloaded string to a valid HtmlDocument so I can parse it using HTMLAgilityPack?
This should work with v1.4:
HtmlWeb hw = new HtmlWeb();
HtmlDocument doc = hw.Load(string.Format("http://www.imdb.com/title/{0}/", ID));
or
string html = client.DownloadString(String.Format("http://www.imdb.com/title/{0}/", ID));
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
Try this (based on this fairly old document):
string url = String.Format("http://www.imdb.com/title/{0}/", ID);
string content = client.DownloadString(url);
HtmlDocument page = new HtmlDocument();
page.LoadHtml(content);
Basically casting is rarely the right way of converting between two types - particularly when there's something like parsing going on.