【问题标题】:How to build .NET web scraper for news articles about people如何为有关人物的新闻文章构建 .NET 网络爬虫
【发布时间】:2025-12-04 21:55:02
【问题描述】:

我希望创建一个简单的网络服务来抓取特定网站上的网页并查找一个人的姓名。任何人都知道是否有任何例子,或者任何人都可以帮助我开始这个吗?

编辑:我应该提到我想用 Visual Studio C# 来做这件事。我只会查看我指定的英文新闻网站。

【问题讨论】:

  • 这将非常基于许多事情,您使用的语言(该语言可以使用哪些工具),您想要获取什么样的特定内容是立即浮现在脑海中的两个。我建议您搜索 Screen Scrapper
  • 我还没有尝试过,我还没有找到一个很好的例子。

标签: asp.net .net


【解决方案1】:

这是一个简单的函数,如果网页包含人名,则返回 true:

string response;
using (System.Net.WebClient wc = new System.Net.WebClient())
{
    response = wc.DownloadString(url);
}  
return reponse.Contains("John Doe");

要在页面中查找链接,请查看以下问题:Parse HTML links using C#
您可以在整个站点中收集不同的 Url,并为找到的每个 Url 运行上面的代码。

此外,将其输入 Google 以查看他们找到的内容。 site:www.somesite.com "John Doe"

【讨论】:

  • 嗯,在这个和敏捷包之间,我可以让它点击登录页面上的各种链接并检查名称并保存该链接。
【解决方案2】:

对于爬虫和解析器(解决方案的两个部分)使用 c# 的最佳选择是使用 HtmlAgility Pack 公开的功能,可以在 CodePlex 上找到。

示例使用场景请参考此答案:How to use HTML Agility pack

【讨论】: