C# 如何使用c语言制作应用程序并从网站收集数据?

C# 如何使用c语言制作应用程序并从网站收集数据?,c#,database,web-scraping,C#,Database,Web Scraping,首先,我希望我的问题不会打扰你。我真的需要了解如何才能做到这一点,但不幸的是,我真的是一个初学者,当涉及到编程时,我是个爬行者。我正在努力以最好的方式学习它。我会感谢你给我的任何帮助 任务是:我奉命找到一种方法,使用c应用程序从网站收集一些数据。这将每天进行,以便更新数据,我们将使用这些数据计算一些财务指标 我知道我的问题可能听起来很模糊,不管怎样,即使告诉我怎样才能更精确,也会对我有所帮助。我知道我似乎知道绝望,但要解决所有人的问题,我的奖学金多少取决于它 提前谢谢!请不要介意英语不好,我是巴

首先,我希望我的问题不会打扰你。我真的需要了解如何才能做到这一点,但不幸的是,我真的是一个初学者,当涉及到编程时,我是个爬行者。我正在努力以最好的方式学习它。我会感谢你给我的任何帮助

任务是:我奉命找到一种方法,使用c应用程序从网站收集一些数据。这将每天进行,以便更新数据,我们将使用这些数据计算一些财务指标

我知道我的问题可能听起来很模糊,不管怎样,即使告诉我怎样才能更精确,也会对我有所帮助。我知道我似乎知道绝望,但要解决所有人的问题,我的奖学金多少取决于它


提前谢谢!请不要介意英语不好,我是巴西人,我的英语可能还没那么好

如果我理解你的问题,你会被要求做一些事情,1下载网页的内容,2尝试解析该内容中的数据

对于步骤1,您应该研究使用C中的对象从网页下载HTML。您可以为WebClient对象提供要从中下载内容的URL,并获取包含URL内容的字符串(可能是HTML)


如何执行步骤2取决于网站上显示的内容。如果您知道要在HTML中查找的某些模式,可以使用各种方法搜索HTML字符串。可以通过使用找到解析HTML数据的更通用的解决方案,这将允许您将HTML作为树状结构DOM进行处理。

如果我理解您的问题,您将被要求执行一些操作,其中1下载网页的内容,2尝试从该内容解析数据

对于步骤1,您应该研究使用C中的对象从网页下载HTML。您可以为WebClient对象提供要从中下载内容的URL,并获取包含URL内容的字符串(可能是HTML)


如何执行步骤2取决于网站上显示的内容。如果您知道要在HTML中查找的某些模式,可以使用各种方法搜索HTML字符串。可以通过使用找到解析HTML数据的更通用的解决方案,这将使您能够将HTML作为树结构DOM处理。

首先,您的英语很好。事实上,我一直以为你是一个以英语为母语的人,直到你不这么说

你要找的术语是“网站清理”。请注意这个问题:。第二个答案指向可以使用的HTML agility pack库

现在,这里有两种可能性。首先,您必须解析HTML并从中提取数据。这需要更多的计算,并且取决于页面的布局。如果他们改变网站的外观,它可能会破坏刮板


第二种可能性是它们提供了一些您可以使用的XML或JSON web服务。在本例中,您并没有删除任何内容,而是使用了一个真正的数据提要。如果站点的布局发生更改,则不会中断。您的目标站点是否支持这种形式的数据源取决于站点。

首先,您的英语很好。事实上,我一直以为你是一个以英语为母语的人,直到你不这么说

你要找的术语是“网站清理”。请注意这个问题:。第二个答案指向可以使用的HTML agility pack库

现在,这里有两种可能性。首先,您必须解析HTML并从中提取数据。这需要更多的计算,并且取决于页面的布局。如果他们改变网站的外观,它可能会破坏刮板

第二种可能性是它们提供了一些您可以使用的XML或JSON web服务。在本例中,您并没有删除任何内容,而是使用了一个真正的数据提要。如果站点的布局发生更改,则不会中断。目标站点是否支持这种形式的数据源取决于站点


好的,这是一个非常简单的应用程序设计,并且有很多代码可以重用。既然你是初学者,我将把你需要做的事情分解成几个步骤,并推荐一些方法

1您将使用System.Net中的类来提取网页WebClient,这是最容易使用的。如果您可以使用操作系统的“计划作业”功能,并让它将页面拉入文件夹,那么您将希望让程序的这部分在计时器上运行

2您还有第二个作业,它将单独运行,从该文件夹中提取未读文件,最好使用包库对其进行解析,然后将其存储在某种索引中


3您有一个类似web或桌面的前端应用程序,它可以查询索引中您要查找的信息。

好的,这是一个非常简单的应用程序设计,而且 存在可以重用的部分代码。既然你是初学者,我将把你需要做的事情分解成几个步骤,并推荐一些方法

1您将使用System.Net中的类来提取网页WebClient,这是最容易使用的。如果您可以使用操作系统的“计划作业”功能,并让它将页面拉入文件夹,那么您将希望让程序的这部分在计时器上运行

2您还有第二个作业,它将单独运行,从该文件夹中提取未读文件,最好使用包库对其进行解析,然后将其存储在某种索引中


3您有一个某种类型的web或桌面前端应用程序,它可以查询该索引以查找您正在查找的信息。

更容易使用Html Agility pack,因为您不能假设所有Html都是格式良好的XML。更容易使用Html Agility pack,因为您不能假设所有Html都是格式良好的XML。我们不会这样做这是你的工作。你走了多远?你调查了什么?你哪里有麻烦?你遇到了哪些具体问题?正如问题创建页面上所述:提供详细信息。分享你的研究。另外:谢谢你的评论。我真的不喜欢到这里来问一些我不太理解的事情。但当你迫切需要帮助,而时间又对你不利时,你必须做点什么。在提问之前,我阅读了这些主题,我尽了最大努力,警告大家我的问题听起来像是你不喜欢的问题,但我需要这样做。我不希望任何人来做我的工作,我希望有人给我指路,Yodaj007、Paul、Erno和Jacob帮了我很多!谢谢大家,只要我能为这个网站做出贡献,我就会做!对不起,我的第一个问题。@ANeves,他不是要求我们为他做他的工作。这个问题要求对整个过程进行总体概述,让他提出更具体的问题。这两个问题都是公平的@Lucas F.,问题不在于问题不好,而在于用户对改进不感兴趣——不是这样!我很粗鲁吗?我道歉,我希望它是建设性的,结果是破坏性的@yodaj007,绝对正确。谢谢你的帮助和澄清。我们不会为你做这项工作。你走了多远?你调查了什么?你哪里有麻烦?你遇到了哪些具体问题?正如问题创建页面上所述:提供详细信息。分享你的研究。另外:谢谢你的评论。我真的不喜欢到这里来问一些我不太理解的事情。但当你迫切需要帮助,而时间又对你不利时,你必须做点什么。在提问之前,我阅读了这些主题,我尽了最大努力,警告大家我的问题听起来像是你不喜欢的问题,但我需要这样做。我不希望任何人来做我的工作,我希望有人给我指路,Yodaj007、Paul、Erno和Jacob帮了我很多!谢谢大家,只要我能为这个网站做出贡献,我就会做!对不起,我的第一个问题。@ANeves,他不是要求我们为他做他的工作。这个问题要求对整个过程进行总体概述,让他提出更具体的问题。这两个问题都是公平的@Lucas F.,问题不在于问题不好,而在于用户对改进不感兴趣——不是这样!我很粗鲁吗?我道歉,我希望它是建设性的,结果是破坏性的@yodaj007,绝对正确。感谢您的帮助和澄清。+1用于web服务推荐;我事先没有发现这是他拥有的一个页面;我事先没有发现这是他拥有的一页。