本人想用C#做一个WEB版的网络爬虫,具体实现给出新闻网址得到网站中新闻的标题和内容.求高人指点设计思路

尽量要考虑全面一点... 尽量要考虑全面一点 展开
 我来答
OrphousV
2013-03-06 · TA获得超过176个赞
知道小有建树答主
回答量:210
采纳率:100%
帮助的人:197万
展开全部
既然是获得指定网址的标题和内容,思路应该是非常清晰的,无非是以下两步:
1.通过WebClient类获取指定网址的源代码,具体来说用DownloadStringAsync()方法就能满足大多数需求了。
2.对源代码进行匹配,可以自己查找特征字符串,一般来说这儿都会用到正则表达式。
正如以上所述,这个爬虫的思路是非常简单的。难的其实不是编码,而是手动寻找能精确匹配新闻标题和内容的正则表达式。每个网站之间差别很大,要crawl标题和内容不像crawl一个网页的标题或者crawl电子邮件、crawl超链接那么直截了当。
我不太确定你是专门针对一个门户网站做爬虫还是想做一个普遍适用的爬虫,如果是后者,你的精力其实主要是花在对特征字符串数据库的维护上——每个网站特征不同,而且网站可能时常会有更新,这你得实时跟进才行。
追问
谢谢您的回答,我是针对一个门户网站做爬虫,门户网站显示的是新闻标题,而内容是点击各标题进去才可以得到的。这个应该怎样实现呢。另外根据您多年的项目经验,这个程序应该注意哪些以致看起来是有经验的人做的,而我还是一个菜鸟
追答
这个只要在获取页面源代码的时候通过正则表达式查找里面的超链接,把它提取出来,再不断向下迭代就好了。这种代码网上应该就有好多的。至于如何要看上去显得更加有经验,这个可以在爬虫效率上下功夫,合理运用多线程,当然还有平常编码习惯中的小细节,不过这些得看到代码才能解释清楚了。
数阔八爪鱼采集器丨RPA机器人
2021-07-30 · 前往八爪鱼RPA应用市场,免费获取机器人
数阔八爪鱼采集器丨RPA机器人
向TA提问
展开全部
一下简单的原理:
首先模拟浏览获取网页。
其次分析网页的内容。
最后根据自己的需要把数据储存在数据库中。(超级简单吧)
备注一句:如果是分布式爬虫的话,我考虑考虑哈,毕竟我还是很菜的哈。
在我使用的HTTP请求不带COOKIE。
带Cookie的代码
using(Stream writer = Request.GetRequestStream()
{
byte[] data=Encoding.GetEncoding("UTF-8").GetBytes("cookie");
request.ContentLength = data.Length;
writer.Write(data,0,data.Length);
}
HTTP请求携带的POST数据
using (StreamWriter streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
streamWriter.Write(postString);
streamWriter.Flush();
streamWriter.Close();
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
easysoft_ln
2013-03-06 · TA获得超过1208个赞
知道大有可为答主
回答量:1.3万
采纳率:41%
帮助的人:4706万
展开全部
我发,baidu hi联系,email? Q?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式