asp.net 抓取网页数据(解决spider多次和重复的解决方案,需要的朋友可以参考)
优采云 发布时间: 2021-11-05 11:23asp.net 抓取网页数据(解决spider多次和重复的解决方案,需要的朋友可以参考)
本文文章主要介绍.net解决蜘蛛多次重复爬行的方案。有需要的朋友可以参考
原因:
早期,由于搜索引擎蜘蛛的不完善,当蜘蛛抓取动态网址时,很容易因为网站等不合理的程序,导致蜘蛛在死循环中迷路。
所以,为了避免前面的现象,蜘蛛不读取动态网址,特别是用?网址
解决方案:
1):配置路由
复制代码代码如下:
routes.MapRoute("RentofficeList",
"rentofficelist/{AredId}-{PriceId}-{AcreageId}-{SortId}-{SortNum}.html",
new {controller = "Home", action = "RentOfficeList" },
new[] {"Mobile.Controllers" });
第一个参数是路由名称
第二个参数是路由的Url方式,参数之间用()-()分隔
第三个参数是一个收录默认路由的对象
第四个参数是应用程序的一组命名空间
2):建立连接
默认排序
对比上面的Url方式,按顺序写参数赋值
3):获取参数
复制代码代码如下:
int areaId = GetRouteInt("AredId");//获取参数
///
/// 获取路由中的值
///
///
钥匙
///
默认值
///
protected int GetRouteInt(string key, int defaultValue)
{
返回 Convert.ToInt32(RouteData.Values[key], defaultValue);
}
///
/// 获取路由中的值
///
///
钥匙
///
protected int GetRouteInt(string key)
{
返回 GetRouteInt(key, 0);
}
根据以上3个步骤,显示的URL地址为:
:3841/rentofficelist/3-0-0-0-0.html
这样就可以避免在静态页面上使用动态参数,显示的页面都是静态页面
以上就是.net解决蜘蛛多次重复爬行的详细内容。更多详情请关注其他相关html中文网站文章!