HtmlAgilityPack在C#中显示“;类型';System.UriFormatException';
本文关键字:类型 System UriFormatException 显示 HtmlAgilityPack | 更新日期: 2023-09-27 18:25:56
我已经使用wget下载了以下页面,并将其保存在f.html 中
http://www.ebay.com/sch/i.html?_nkw=gruen&_in_kw=1&_ex_kw=莎拉+石英+大使馆+鲍勃+罗伯特+大象+阿迪达斯&_sacat=查看所有类别&_okw=可怕&_oexkw=萨拉+石英+大使馆+鲍勃+罗伯特+大象+阿迪达斯&_adv=1&_udlo=&_udhi=&_LH_ Time=1&_ftrt=903&_ftrv=24&_sabdlo=&_sabdhi=&_samilow=&_samihi=&_sadis=200&_fpos=Zip+编码&_fsct=&LH_SALE_CURRENCY=0&_sop=12&_dmd=1&_ipg=50
现在我想加载这个页面,使用C#中的HtmlAgilityPack进行解析。使用此代码片段
var webGet = new HtmlWeb();
var document = webGet.Load("f.html");
第二行抛出此错误
A first chance exception of type 'System.UriFormatException' occurred in System.dll
解决方案是什么??
我手头没有编译器,但我认为"f.html"
不是一个格式良好的Uri。它缺少模式和域。
正确的uri应该类似于"http://the.domain.name/f.html"
。
尝试以下操作:
var url = "http://www.ebay.com/sch/i.html?_nkw=gruen&_in_kw=1&_ex_kw=sara+quartz+embassy+bob+robert+elephants+adidas&_sacat=See-All-Categories&_okw=gruen&_oexkw=sara+quartz+embassy+bob+robert+elephants+adidas&_adv=1&_udlo=&_udhi=&_LH_Time=1&_ftrt=903&_ftrv=24&_sabdlo=&_sabdhi=&_samilow=&_samihi=&_sadis=200&_fpos=Zip+code&_fsct=&LH_SALE_CURRENCY=0&_sop=12&_dmd=1&_ipg=50";
var document = new HtmlDocument();
document.LoadHtml(new WebClient().DownloadString(url));
如果你想从本地文件加载,请尝试:
var file = "f.html";
var document = new HtmlDocument();
document.LoadHtml(File.ReadAllText(file));