首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用C#搜索多个网站

问使用C#搜索多个网站
EN

Stack Overflow用户
提问于 2011-08-24 00:18:20
回答 3查看 3.9K关注 0票数 1

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

有没有一个网络爬虫可以做同样的事情,如果我给它一个顶级域名(例如:我告诉它在stackoverflow.com上找到“有趣”这个词,它就会告诉我每次出现“有趣”的时候)?

这些网站允许通过它们的搜索栏进行搜索。

我是否需要网站协作来自动执行搜索?

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

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-24 00:22:29

如果你计划在整个网站中爬行来计算这样的单词,如果你不缓存它,你就会被阻止,你基本上是在请求网站的每一页。也许可以考虑整合google的域名搜索功能?

这里有一个指向googles页面的链接,详细介绍了如何与c#交互

http://code.google.com/apis/gdata/client-cs.html

编辑:抱歉,这不太正确:http://gsalib.codeplex.com/

http://answers.oreilly.com/topic/2165-how-to-search-google-and-bing-in-c/

票数 2
EN

Stack Overflow用户

发布于 2011-08-24 00:25:02

...web sites allow searching via their search bar ... Can I use C# to auto search websites, then return the search results?

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

代码语言:javascript
复制
          http://yourTargetDomain?searchterm=foo

但是,除非网站专门设计了来自该URL的搜索结果作为结构化数据,否则网站不会“告诉你所有‘有趣的’出现的时间”,而是会向你返回一个适合浏览器显示的搜索响应,所以你必须从这个HTML流中解析出结果。

例如:

http://philadelphia.craigslist.org/search/tls?query=ladder&srchType=A&minAsk=&maxAsk=

票数 1
EN

Stack Overflow用户

发布于 2011-08-24 00:27:04

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

编辑:适用于不支持RSS的站点

对于那些不支持RSS的站点,您可以考虑使用屏幕抓取器。查看这篇关于代码项目的文章,让你开始吧:

http://www.codeproject.com/KB/aspnet/weather.aspx

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7164224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档