php代码记录蜘蛛来访统计
定义日志文件路径:$logFile 变量指定了日志文件的名称和路径。
获取访问者的 User-Agent:通过 $_SERVER['HTTP_USER_AGENT'] 获取访问者的 User-Agent 信息。
定义常见蜘蛛的 User-Agent 特征:$spiders 数组包含了常见蜘蛛的名称和对应的 User-Agent 特征。
检查是否为蜘蛛访问:遍历 $spiders 数组,使用 strpos 函数检查 User-Agent 中是否包含蜘蛛的特征字符串。如果匹配成功,则记录访问信息到日志文件中。

记录蜘蛛访问信息
首先,创建一个 PHP 脚本用于记录蜘蛛的访问信息到日志文件中。
<?php
// 定义日志文件路径
$logFile = 'spider_log.txt';
// 获取访问者的User-Agent
$userAgent = $_SERVER['HTTP_USER_AGENT'];
// 常见蜘蛛的User-Agent特征
$spiders = array(
'Googlebot' => 'Googlebot',
'Baiduspider' => 'Baiduspider',
'Bingbot' => 'Bingbot',
'YandexBot' => 'YandexBot',
'Sogou spider' => 'Sogou spider',
'360Spider' => '360Spider'
);
// 检查是否为蜘蛛访问
foreach ($spiders as $spiderName => $spiderAgent) {
if (strpos($userAgent, $spiderAgent) !== false) {
// 获取当前时间
$currentTime = date('Y-m-d H:i:s');
// 记录访问信息
$logEntry = $currentTime . ' - ' . $spiderName . ' - ' . $userAgent . PHP_EOL;
file_put_contents($logFile, $logEntry, FILE_APPEND);
break;
}
}
?>统计蜘蛛访问次数
检查日志文件是否存在:使用 file_exists 函数检查日志文件是否存在。
读取日志文件内容:使用 file_get_contents 函数读取日志文件的内容。
分割日志内容为每行:使用 explode 函数将日志内容按换行符分割为每行。
初始化统计数组:$spiderStats 数组用于存储各蜘蛛的访问次数。
遍历日志行:遍历日志行,提取蜘蛛名称,并统计访问次数。
输出统计结果:使用 HTML 列表输出各蜘蛛的访问次数。
隐藏资源
登陆后查看此资源立即登陆




发表评论