如果你是一个站长,如果你有自己的博客网站,如果你会编程,有没有想过,统计一下每天有哪些搜索引擎来访问过你的网站,方便知道收录的大概情况。

首先说明一点,搜索引擎会定期派出它们的机器人(蜘蛛),来访问你的网站,将你的网页收录在数据库中,如果被审核为有效内容,以后在搜索引擎上面搜索类似的关键词时,就能找到你的网站链接。

比如搜索:爱符号,就有可能看到首页 或者页面标题带此关键词的链接,或者是页面内容内容有此关键词的链接。

那么现在教你在asp.net中实现这样的功能。

网上其实也能找到一些类似的程序代码,可能会是php或asp的。

首先认识一下:global.asax

它是全局的一个文件,每次请求都会执行它里面的一些方法。

我们在这里要用到的就是:Application_BeginRequest,在请求执行之前。

注意:Application_BeginRequest 中不能用Session 和 Response,可以用 Request

废话少说,看代码:

[cs]

  1. protected override void Application_BeginRequest(object sender, EventArgs e) {
  2. RecordSpider();//记录蜘蛛来访
  3. }
  4. private void RecordSpider(){
  5. string spiderName=GetSpiderName(Request.UserAgent);//得到蜘蛛的标识,
  6. if(!string.IsNullOrEmpty(spiderName)){//没名称的时候,就不是蜘蛛
  7. //记录:今日:蜘蛛名称,时间,次数(加1)
  8. //建议表结构:{ Id,Day,Name,Count,CreateDate}
  9. //Id:主键,自增
  10. //Day:int,用于保存日期数字方便查询,例:20121228
  11. //Name:varchar(64),蜘蛛名称,如果想更高效,可以用数字,
  12. //Count:次数,今日内将持续叠加此值
  13. //CreateDate:最后一次来访时间,即今日内,每来一次,此值将被更新为当前时间
  14. //判断:今日此蜘蛛没有来过:插入一条记录,反之叠加Count并更新CreateDate
  15. }
  16. }
  17. /// <summary>
  18. /// 获取蜘蛛名称
  19. /// </summary>
  20. /// <param name="userAgent">user-agent header</param>
  21. /// <returns>返回已知蜘蛛名称</returns>
  22. public static string GetSpiderName(string userAgent) {
  23. if (string.IsNullOrEmpty(userAgent))
  24. return string.Empty;
  25. if (ContainsAny(userAgent, "Sosospider"))//其实很简单,蜘蛛总是会在HTTP头 User-Agent 中,留下一些特殊的标识(不排除有的网站故意这样做)
  26. return "SosoSpider";
  27. if (ContainsAny(userAgent, "Googlebot"))
  28. return "Googlebot";
  29. if (ContainsAny(userAgent, "Baiduspider"))
  30. return "BaiduSpider";
  31. return string.Empty;//暂时只写这些,实际代码有很多的,我这里只是贴一部分,雅虎 MSN BING 都是可以支持
  32. nbsp;}
  33. //包含任意,用于在指定的文本中,包含其中一个文本就返回true
  34. private static bool ContainsAny(string text, params string[] values) {
  35. if (string.IsNullOrEmpty(text))
  36. return false;
  37. if (values == null || values.Length == 0)
  38. return false;
  39. bool result = false;
  40. foreach (var item in values) {
  41. if (text.IndexOf(item, StringComparison.OrdinalIgnoreCase) != -1) {
  42. result = true;
  43. break;
  44. }
  45. }
  46. return result;
  47. }
  48. 双击项目中的global.asax 进入代码窗口后,把上面的代码放进去,然后放到网站上,看看有没有蜘蛛来过。
  49. 代码中没有指明如何记录,请自行建立表,和后台页面显示。这些都是数据插入、更新、查询的事情。

统计概况

蜘蛛统计

今日:

谷歌:142(7秒前)

百度:101(6分钟前)

搜搜:46(半小时前)

昨日:

百度:650(11小时前)

搜搜:59(12小时前)

谷歌:184(11小时前)

必应:4(半天前)

雅虎:4(半天前)

前日:

谷歌:292(昨天23:37)

搜搜:63(昨天23:41)

百度:268(昨天23:55)

雅虎:3(昨天11:36)

必应:1(昨天16:08)

网站记录蜘蛛来访次数相关推荐

  1. 让你的网站记录蜘蛛来访次数吧

    文章转自:爱符号 http://www.afuhao.com/article_articleId-142.shtml 如果你是一个站长,如果你有自己的博客网站,如果你会编程,有没有想过,统计一下每天有 ...

  2. 如何提高蜘蛛对网站的爬取次数?

    在网站优化中,都要进行更新网站内容才能更好的吸引蜘蛛对网站的爬行和抓取,从而提高网站的收录率,更多的优化人员也在寻找更多优化技巧来提升网站的收录率,那么怎样才能提高蜘蛛来我们网站抓取的次数呢? 一.更 ...

  3. 多网站批量蜘蛛日志分析工具

    网站的状态可以用日志来进行分析,蜘蛛日志分析工具通过可视化的数据曲线,方便我们对我们多个站点的蜘蛛爬取情况和行为进行分析,蜘蛛日志可以反映一个网站的状态,每天对我们的蜘蛛爬取情况进行了解和分析有助于我 ...

  4. java 记录微信转发次数_微信分享朋友圈记录分享次数统计实现

    业余时间研究微信的接口方法.记录下微信分享朋友圈记录分享次数统计实现:1.引入JS文件 2.通过config接口注入权限验证配置 3.通过ready接口处理成功验证 4.通过error接口处理失败验证 ...

  5. SpringBoot后端统计网站的IP访问次数及地区

    项目是用SpringBoot+Vue实现,前后端分离的,前端是用nginx部署的,虽说可以通过Nginx的日志来统计网站的IP的访问次数,但想在前端用图形化的方式来展示是不太可行的,所以我想着是在Sp ...

  6. B_随笔_关于网站记录(3)

    title date tags categories 关于网站记录三 2019-12-19 15:41:34 -0800 杂文 随笔 写于2019年12月19日. 最近几日一直在捣鼓自己的个人博客,科 ...

  7. 网站服务器蜘蛛日志怎么看,如何查看百度蜘蛛,google蜘蛛爬取记录?《网站日志分析篇》...

    也许各位常常看到别人在群里聊天,某某人的网站出现什么问题了...别人建议查看网站的日志文件,分析蜘蛛的爬取情况.可是如何去分析日志文件却很少有人去提,接下来我会大概介绍一下,如何去分析网站的日志文件, ...

  8. java 记录微信转发次数_微信分享追踪分析系统 ,可以精细统计朋友圈访客来访次数及时间和转发...

    当然,用同样的方式把你的项目或活动单独发给客户或是进行群发,易推创意-微信分享追踪分析系统后台同样或把你浏览次数多的时间长的客户直接抓取出来,提升了工作效率,业绩自然就提升了. 易推创意-微信分享追踪 ...

  9. 长沙网络推广浅析如何增加网站的蜘蛛爬取频次?

    网站的收录越高,网站排名高的机会也就越大,对于收录的问题,对于蜘蛛爬取网站也是有很大的关系的,通常情况下,蜘蛛爬取的越多,也就代表该网站很受用户喜爱,网站的被抓取率也会高点,那么对于有些网站优化来说, ...

最新文章

  1. PagedGeometry 笔记03
  2. 2022斯坦福AI指数报告出炉!中国霸榜AI顶会,但引用量最低
  3. 返乡置业?多数人将掉入陷阱
  4. VMware多虚拟机网络配置
  5. 拦截器读post参数导致接口post请求报错_vue中Axios的封装和API接口的管理
  6. JavaScript 精粹 基础 进阶(5)数组
  7. Http GET、Post方式的请求总结
  8. 面试记录:冒泡排序都不会,大哥你会编程吗
  9. 解决打印机共享提示:你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问
  10. sqlserver 企业版下载地址
  11. 【Go语言实战】(4) 简简单单的几十行代码实现 TCP 通信
  12. git hub寻找资源
  13. Signal Processing Toolbox
  14. 【JS】AMD,CMD,CommenJS和ES6
  15. 计算机课情感态度与价值观,浅谈信息技术课中情感态度价值观的培养
  16. Linux SYN报文接收及发送SYNACK报文
  17. vfp:汉字翻译成拼音
  18. 课程学习笔记1:自然辩证法概论
  19. 自建邮件系统的三大优势
  20. 11思维模型:锚定效应一主动权属于掌握锚的人

热门文章

  1. 蓝奏云文件真实地址分析
  2. 中国移动联合ATT正式启动ONAP国际开源社区
  3. 四个月没发工资了,你们呢?
  4. 打印机无法打印的10种解决方法
  5. Ubuntu 20.04 GeForce RTX 2080 Ti
  6. 20天自刷/销量200笔不降权,真实交易只有26笔
  7. apache评分标准,简论毕业论文(标准格式)_APACHE评分系统评分表
  8. iOS开发 Xcode13-iOS 15适配(OC、Swift)
  9. 100种思维模型之升维思维模型-026
  10. 大数据笔记--Hive(第三篇)