【发布时间】:2026-01-12 13:10:01
【问题描述】:
我正在尝试开发一个桌面应用程序以用作网站抓取工具。我的要求是用户应该能够在桌面应用程序中指定一个 url。桌面应用程序应该能够调用 asp.net 脚本从网站抓取数据并将记录返回到桌面应用程序。
我应该为此使用 Web 服务还是 ASP.NET 运行时...???
任何帮助表示赞赏:)
其他详情
抓取活动已经完成。我使用了 HTMLAgility pkg。这是我从网页中提取公司名称列表的抓取代码。
public static String getPageHTML(String URL)
{
String totalCompanies = null;
HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(URL);
IWebProxy myProxy = httpWebRequest.Proxy;
if (myProxy != null)
{
myProxy.Credentials = CredentialCache.DefaultCredentials;
}
httpWebRequest.Method = "GET";
HttpWebResponse res;
res = (HttpWebResponse)httpWebRequest.GetResponse();
HtmlDocument doc1 = new HtmlDocument();
doc1.Load(res.GetResponseStream());
HtmlNode node = doc1.DocumentNode.SelectSingleNode("//td[@class='mainbody']/table/tr[last()]/td");
try
{
totalCompanies = node.InnerText;
return totalCompanies;
}
catch (NullReferenceException e)
{
totalCompanies = "No records found";
return totalCompanies;
}
}
【问题讨论】:
-
我认为你需要网络服务。
-
为什么不能通过WebClient直接下载?并使用 HtmlAgilityPack 解析检索到的 html?另外,请查看多线程的一些基础知识以并行处理。
标签: c# asp.net web-scraping