我正在开发一个C#应用程序。从网页上抓取源代码的最佳方法是什么?
现在,我只是在我的浏览器(Chrome)中查看页面源,复制&将其粘贴到文本文件中,并将其吸入解析器。
我在想我首先在我的应用程序中创建一个文本框,我可以粘贴一个URL。然后,应用程序将拉出该页面的源代码,然后将其传递给我的解析器。
答案 0 :(得分:2)
我会考虑HtmlAgilityPack。您可以轻松下载这样的页面:
HtmlDocument document = new HtmlDocument();
document.LoadHtml(new WebClient().DownloadString("http://www.bing.com"));
如果你正在寻找一个好的解析器,我也有很好的ScrapySharp经验,它为HtmlAgilityPack的HtmlDocument添加了扩展方法,可以使用像jQuery中找到的CssSelectors轻松选择页面上的元素,如下所示:
document.DocumentNode.CssSelect(".sessions .main-head-row td.download a.text-pdf")
答案 1 :(得分:0)