Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何抓取网站/将数据提取到数据库C#和SQLSERVER中_C#_Sql Server_Web Crawler - Fatal编程技术网

如何抓取网站/将数据提取到数据库C#和SQLSERVER中

如何抓取网站/将数据提取到数据库C#和SQLSERVER中,c#,sql-server,web-crawler,C#,Sql Server,Web Crawler,我想构建一个单一的累积webapp,在这个应用中,我所在组织的用户只能使用一个站点,而不能出于不同的目的使用十多个站点。我所在组织有不同的考勤、账户、人力资源等站点。我想对所有这些站点进行爬网,读取它们的数据,并使用c#将其保存在我的sqlserver中,然后用户可以直接使用/搜索我的系统中的数据 How would that work? What tools/libraries can/should I use? Are there good tutorials on that? How do

我想构建一个单一的累积webapp,在这个应用中,我所在组织的用户只能使用一个站点,而不能出于不同的目的使用十多个站点。我所在组织有不同的考勤、账户、人力资源等站点。我想对所有这些站点进行爬网,读取它们的数据,并使用c#将其保存在我的sqlserver中,然后用户可以直接使用/搜索我的系统中的数据

How would that work?
What tools/libraries can/should I use?
Are there good tutorials on that?
How do I best deal with binary data (e.g. images)?
Are there already good solutions for that?

如果你所走的路充满了问题。我从来没有尝试过。考虑这些挑战:

  • 您必须解析HTML,它可能格式正确,也可能格式不正确
  • 数据可能会散布各种非数据(广告、导航、悬停文本、javascript、注释等)
  • 你不知道数据的年代
  • 给定站点的HTML格式可能会在一天到下一天发生变化,可能会打破您以前的抓取策略
  • 重要信息可能存在于仅在满足授权步骤后访问的页面上
  • 过去存在于一个URL的数据可能已被移动,现在存在于不同的URL,或者被拆分为多个不同的URL
  • 只有在输入某些搜索参数或某些用户登录时,才能找到某些数据
  • 您站点的用户可能未被授权(?)查看您从其他站点获取的数据

我建议构建一个数据仓库,并与这些系统的提供商合作,从他们的根数据库访问数据源(不过可能是:RESTURL、直接SQL、web服务、夜间数据转储)。使用ETL从这些系统后面的原始数据库中提取、转换和加载数据

为什么不能更直接地公开来自其他系统的数据,可能是作为web服务?为什么要复制它们的存储?我尝试了WebRequest req=WebRequest.Create(url);但这也给了我一个问题。远程服务器返回了一个错误:(503)服务器不可用。感谢您提供的信息。是的,我知道所有上述缺点…我无法访问他们的数据库,他们也没有任何api…唯一的方法是对他们的信息进行爬网,将其保存到我的数据库中,然后使用它。每天我都会运行爬网