Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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# 使用C语言搜索多个网站#_C#_Search_Web Crawler - Fatal编程技术网

C# 使用C语言搜索多个网站#

C# 使用C语言搜索多个网站#,c#,search,web-crawler,C#,Search,Web Crawler,我可以使用C#自动搜索网站,然后返回搜索结果吗 如果我给它一个顶级域名(例如:我告诉它在stackoverflow.com上找到“搞笑”一词,它会告诉我“搞笑”出现的所有时间),有没有一个网络爬虫会做同样的事情 这些网站允许通过搜索栏进行搜索 我需要网站合作来自动搜索吗 注意:我计划每天只做一到两次搜索,所以我怀疑我会被阻止,或者被要求进行身份验证。如果你计划在整个网站上爬行来计算这样的字数,如果你不缓存它,你会被阻止,你基本上会要求网站的每一页。也许考虑整合谷歌域搜索的替代品? 这里有一个到谷

我可以使用C#自动搜索网站,然后返回搜索结果吗

如果我给它一个顶级域名(例如:我告诉它在stackoverflow.com上找到“搞笑”一词,它会告诉我“搞笑”出现的所有时间),有没有一个网络爬虫会做同样的事情

这些网站允许通过搜索栏进行搜索

我需要网站合作来自动搜索吗


注意:我计划每天只做一到两次搜索,所以我怀疑我会被阻止,或者被要求进行身份验证。

如果你计划在整个网站上爬行来计算这样的字数,如果你不缓存它,你会被阻止,你基本上会要求网站的每一页。也许考虑整合谷歌域搜索的替代品?

这里有一个到谷歌网页的链接,详细介绍了如何与c语言接口#

编辑:很抱歉,这不太正确:


如果你计划在整个网站上爬行来计算这样的单词,如果你不缓存它,你将被阻止,你将请求网站的每个页面。也许考虑整合谷歌域搜索的替代品?

这里有一个到谷歌网页的链接,详细介绍了如何与c语言接口#

编辑:很抱歉,这不太正确:


…网站允许通过搜索栏进行搜索。。。我可以使用C#自动搜索网站,然后返回搜索结果吗?

是,如果网站提供了一个URL,其中搜索词作为URL的查询字符串参数提供

          http://yourTargetDomain?searchterm=foo
但是,除非该网站专门将该URL的搜索结果设计为结构化数据,否则该网站不会“告诉[你]所有出现“搞笑”的时间”,而是会向你发送一个适合浏览器显示的搜索响应,因此你必须从这一HTML流中解析结果

例如:


…网站允许通过搜索栏进行搜索。。。我可以使用C#自动搜索网站,然后返回搜索结果吗?

是,如果网站提供了一个URL,其中搜索词作为URL的查询字符串参数提供

          http://yourTargetDomain?searchterm=foo
但是,除非该网站专门将该URL的搜索结果设计为结构化数据,否则该网站不会“告诉[你]所有出现“搞笑”的时间”,而是会向你发送一个适合浏览器显示的搜索响应,因此你必须从这一HTML流中解析结果

例如:


我会考虑构建RSS聚合器。RSS是标准化的,所以这可能是从各种来源收集搜索结果最可靠的方法

编辑:对于不支持RSS的网站

对于不支持RSS的站点,您可以考虑使用屏幕刮板。请参阅这篇关于代码项目的文章,开始:


我会考虑构建RSS聚合器。RSS是标准化的,所以这可能是从各种来源收集搜索结果最可靠的方法

编辑:对于不支持RSS的网站

对于不支持RSS的站点,您可以考虑使用屏幕刮板。请参阅这篇关于代码项目的文章,开始:


如果事情这么简单,我就不需要帮助了。网站分配了一个搜索ID,例如“/SearchResults.aspx?searchID=00865caa-ed5c-46a1-b850-0450f102dda5&page=0&set=0&pageSize=100”,但我想要访问的页面只是一个标准网页。例:“[许多其他不变的东西]RecID=5358254”@wizlog:我想你误解了我。我不是说这很简单;相反,我是在向你们展示,它确实不像你们希望的那么简单;这样一个URL,在查询字符串后附加搜索词,其结果是一个HTML标记流,而不仅仅是一个事件列表。如果它这么简单,我就不需要帮助了。网站分配了一个搜索ID,例如“/SearchResults.aspx?searchID=00865caa-ed5c-46a1-b850-0450f102dda5&page=0&set=0&pageSize=100”,但我想要访问的页面只是一个标准网页。例:“[许多其他不变的东西]RecID=5358254”@wizlog:我想你误解了我。我不是说这很简单;相反,我是在向你们展示,它确实不像你们希望的那么简单;这样一个URL加上搜索词后的查询字符串的结果是一个HTML标记流,而不仅仅是一个事件列表。如果该站点不提供RSS提要,该怎么办?您可以使用屏幕刮板查找不支持RSS的站点。是的,但我仍然需要手动转到每个网页并键入我的查询,对吗?我将搜索50个不同的网站,这就是为什么我在寻找一种方法来加快搜索速度。我相信这篇文章展示了如何查询网站的结果。它基本上只是使用WebRequest来读取响应流并解析结果。如果您维护了要搜索的站点列表,您应该能够自动执行屏幕抓取过程。您可以使用一些异步调用一次执行多个搜索,以加快搜索速度。如果该站点不提供RSS提要,该怎么办?您可以研究对不支持RSS的站点使用屏幕刮板。是的,但我仍然需要手动转到每个网页并键入我的查询,对吗?我将搜索50个不同的网站,这就是为什么我在寻找一种方法来加快搜索速度。我相信这篇文章展示了如何查询网站的结果。它基本上只是使用WebRequest来读取响应流并解析结果。如果您维护了要搜索的站点列表,您应该能够自动执行屏幕抓取过程。您可以使用一些Asynchronous调用一次执行多个搜索,以加快搜索速度。