网站首页 蜘蛛池 蜘蛛池教程 正文
这是蜘蛛统计,分别统计百度蜘蛛、搜狗蜘蛛、360蜘蛛、谷歌蜘蛛、bing蜘蛛、神马蜘蛛和其他蜘蛛。
统计为txt格式,按照:时间 抓取的链接,保存为txt,一行一个。
分别保存在对应的文件夹,如百度蜘蛛就保存在spider/baidu文件夹下,搜狗就保存在spider/sogou文件夹下,如果不存在则新建。
里面又有年月日命名的文件夹,如20230101,每天的蜘蛛来访则保存到对应的日期,如果不存在则新建。
最后在当前页面,图表展现txt数据。
<?php // 蜘蛛类型数组 $spiders = array('baidu', 'sogou', '360', 'google', 'bing', 'sm', 'other'); // 获取当前日期 $currentDate = date('Ymd'); // 循环检查并创建对应的文件夹 foreach ($spiders as $spider) { $spiderDir = 'spider/' . $spider; if (!file_exists($spiderDir)) { mkdir($spiderDir, 0777, true); } $dateDir = $spiderDir . '/' . $currentDate; if (!file_exists($dateDir)) { mkdir($dateDir, 0777, true); } } // 获取访问者IP $visitorIP = $_SERVER['REMOTE_ADDR']; // 获取蜘蛛类型 $userAgent = $_SERVER['HTTP_USER_AGENT']; $spiderType = 'other'; // 默认为其他蜘蛛 if (strpos($userAgent, 'Baiduspider') !== false) { $spiderType = 'baidu'; } elseif (strpos($userAgent, 'Sogou') !== false) { $spiderType = 'sogou'; } elseif (strpos($userAgent, '360Spider') !== false) { $spiderType = '360'; } elseif (strpos($userAgent, 'Googlebot') !== false) { $spiderType = 'google'; } elseif (strpos($userAgent, 'Bingbot') !== false) { $spiderType = 'bing'; } elseif (strpos($userAgent, 'YoudaoBot') !== false) { $spiderType = 'sm'; } // 将访问信息保存到对应的文件 $logFile = 'spider/' . $spiderType . '/' . $currentDate . '/spider.txt'; $logData = date('H:i:s') . ' ' . $visitorIP . "\n"; file_put_contents($logFile, $logData, FILE_APPEND); // 读取日志文件 $logLines = array(); if (file_exists($logFile)) { $logData = file_get_contents($logFile); $logLines = explode("\n", trim($logData)); } // 显示统计数据 echo '<html> <head> <title>蜘蛛统计</title> <style> table { border-collapse: collapse; width: 400px; } th, td { border: 1px solid #ddd; padding: 8px; text-align: left; } </style> </head> <body> <h1>蜘蛛统计</h1>'; foreach ($spiders as $spider) { $spiderDir = 'spider/' . $spider; $dateDir = $spiderDir . '/' . $currentDate; $logFile = $dateDir . '/spider.txt'; echo '<h2>' . ucfirst($spider) . '</h2>'; if (file_exists($logFile)) { $logData = file_get_contents($logFile); $logLines = explode("\n", trim($logData)); echo '<table> <tr> <th>时间</th> <th>抓取的链接</th> </tr>'; foreach ($logLines as $line) { $logParts = explode(' ', trim($line)); $time = $logParts[0]; $link = isset($logParts[1]) ? $logParts[1] : '-'; echo '<tr> <td>' . $time . '</td> <td>' . $link . '</td> </tr>'; } echo '</table>'; } else { echo '<p>暂无数据</p>'; } } echo '</body> </html>'; ?>
当然可以图表形式展示txt数据,可以使用图表库来实现。
下面是一个使用Chart.js库来绘制柱状图的例子:
<!DOCTYPE html> <html> <head> <title>蜘蛛统计图表</title> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> </head> <body> <canvas id="chart"></canvas> <script> // 读取日志数据 var logData = `<?php echo $logData; ?>`; // 将$logData替换为实际的日志数据 // 解析日志数据 var lines = logData.split('\n'); var labels = []; var counts = []; for (var i = 0; i < lines.length; i++) { var parts = lines[i].split(' '); if (parts.length >= 2) { labels.push(parts[0]); counts.push(parseInt(parts[1])); } } // 创建图表 var ctx = document.getElementById('chart').getContext('2d'); var chart = new Chart(ctx, { type: 'bar', data: { labels: labels, datasets: [{ label: '访问次数', data: counts, backgroundColor: 'rgba(0, 123, 255, 0.5)', borderColor: 'rgba(0, 123, 255, 1)', borderWidth: 1 }] }, options: { responsive: true, scales: { x: { display: true, title: { display: true, text: '时间' } }, y: { display: true, title: { display: true, text: '访问次数' }, beginAtZero: true } } } }); </script> </body> </html>
- 上一篇: 多线程网页更新反馈工具
- 下一篇: 解决E软件在Windows Serve上数据保护的问题
必看说明
- 本站中所有被研究的素材与信息全部来源于互联网,版权争议与本站无关。
- 本站文章或仅为文本内容原创,非程序原创。如有侵权、不妥之处,请联系站长第一时间删除。敬请谅解!
- 本站所有内容严格遵守国家法律的条例,所有研究的算法技术均来源于搜索引擎公开默认允许用户研究使用的接口。
- 阅读本文及获取资源前,请确保您已充分阅读并理解《访问曹操SEO网站需知:行为准则》。
- 本站分享的任何工具、程序仅供学习参考编写架构,仅可在本地的虚拟机内断网测试,严禁联网运行或上传搭建!
- 任何资源必须在下载后24个小时内,从电脑中彻底删除。不得传播或者用于其他任何用途!否则一切后果用户自负!
- 转载请注明 : 文章转载自 曹操SEO 分UA文本统计蜘蛛并展现的php代码
- 本文标题:《分UA文本统计蜘蛛并展现的php代码》
- 本文链接:https://www.ccooc.cn/2015.html
猜你喜欢
- 2024-04-01 CCSEO原创蜘蛛统计v1.3
- 2024-01-27 CCSEO原创蜘蛛统计v1.2
- 2024-01-26 通过伪静态实现非蜘蛛则跳转的代码
- 2023-12-15 实现IP地址屏蔽和白名单功能的php代码
- 2023-10-22 CCSEO原创蜘蛛统计v1.1
- 2023-10-09 跟踪301重定向获取落地页域名的php代码
- 2023-10-09 ccspider蜘蛛统计插件
- 2023-09-28 CCSEO原创蜘蛛统计v1.0
- 2023-09-28 CCSEO蜘蛛统计数据可视化的拆解
- 2023-09-28 CCSEO蜘蛛统计开发思路
你 发表评论:
欢迎- 3969℃遵纪守法:一起举报违法网址
- 1038℃警惕“冒用身份”的电信网络诈骗
- 3152℃备案域名的买卖管控会越来越严,不要尝试!
- 1363℃6月1日是《中华人民共和国网络安全法》实施五周年
- 930℃违规事件分类与违规信息类型说明
- 850℃关于严格遵守网络安全法规的公告
- 2653℃百度正打击构造虚假标题等违规站点
- 1296℃「百日行动」“断卡”行动持续发力
- 3259℃搜狗自动养站程序:基于懒人站群程序V2.4.1
- 2131℃搜狗分城市泛二级程序:基于懒人站群程序V2.4.1
- 1671℃罪恶克星:多线程不良网站举报工具
- 1634℃移动端多线程填表百度反馈工具V1.3
- 1297℃如何提高小站被搜索引擎收录的机会?
- 1284℃多线程填表百度反馈工具使用说明
- 1224℃移动端多线程填表百度反馈工具V1.2
- 1168℃百度已噶:百度快速收录权限被回收
- 04-22通过Nginx配置增强网站安全性
- 04-22企业网站安全漏洞应对:从修复到增强全方位安全新举措
- 04-21搜狐号安全系统升级通知
- 04-18多线程批量查询链接收录情况(免代理)
- 04-09懒人开源站群程序V2.4.2:影视模板V2
- 04-03百家号批量发布软件V1.8.5
- 04-03百家号批量发布软件V1.7
- 04-03百家号批量发布软件V1.5
- 近期评论
- 文章归档
-
- 2024年4月 (5)
- 2024年3月 (6)
- 2024年1月 (2)
- 2023年12月 (4)
- 2023年11月 (2)
- 2023年10月 (7)
- 2023年9月 (24)
- 2023年8月 (6)
- 2023年7月 (20)
- 2023年6月 (13)
- 2023年5月 (26)
- 2023年4月 (48)
- 2023年3月 (27)
- 2023年2月 (15)
- 2023年1月 (11)
- 2022年12月 (16)
- 2022年11月 (7)
- 2022年10月 (33)
- 2022年9月 (45)
- 2022年8月 (18)
- 2022年7月 (23)
- 2022年6月 (24)
- 2022年5月 (10)
- 2022年4月 (54)
- 2022年3月 (68)
- 2022年2月 (3)
- 2022年1月 (4)
- 2021年12月 (27)
- 2021年11月 (20)
- 2021年10月 (4)
- 2021年9月 (22)
- 2021年8月 (71)
- 2021年7月 (4)
- 2021年6月 (17)
- 2021年5月 (28)
- 2021年4月 (1)
- 2021年3月 (39)
- 2021年1月 (8)
- 2020年12月 (31)
- 2020年11月 (15)
- 2020年10月 (50)
- 2020年9月 (114)
- 2020年8月 (63)
- 2020年7月 (30)
- 2020年6月 (50)
- 2020年5月 (127)
- 2020年4月 (83)
- 2020年3月 (92)
- 2020年2月 (82)
- 2020年1月 (18)
- 2019年12月 (79)
- 2019年11月 (16)
- 2019年10月 (35)
- 2019年9月 (3)
- 2017年12月 (1)
- 2017年11月 (203)
- 2017年10月 (155)
- 标签列表
- 站点信息
-
- 文章总数:2021
- 页面总数:7
- 分类总数:46
- 标签总数:340
- 评论总数:8891
- 浏览总数:5165013
本文暂时没有评论,来添加一个吧(●'◡'●)