pfinalclub/keyword-rank-monitor

关键词排名监控系统 - 支持批量导入关键词,自动查询Google、Bing、Yahoo排名

1.0.0 2025-09-12 05:39 UTC

This package is auto-updated.

Last update: 2025-09-12 05:40:26 UTC


README

一个功能完整的 PHP 关键词排名监控扩展包,支持批量导入关键词,自动查询 Google、Bing、Yahoo 等搜索引擎的排名情况。

🚀 主要功能

  • 批量导入关键词:支持从 Excel 文件批量导入关键词
  • 多搜索引擎支持:支持 Google、Bing、Yahoo 三大搜索引擎
  • 自动排名检查:每日自动查询关键词排名
  • 数据统计分析:提供排名分布、达标率、趋势分析等统计功能
  • 命令行工具:提供完整的 CLI 工具集
  • FastAdmin集成:100%兼容 FastAdmin,可快速集成
  • 单元测试:包含完整的单元测试套件(32个测试用例)

📦 安装

composer require pfinalclub/keyword-rank-monitor

🚀 快速开始

1. 初始化数据库

php console.php init

2. 导入关键词

php console.php import --file=keywords.xlsx

3. 检查排名

php console.php check-ranks

4. 查看统计

php console.php stats

💻 使用示例

基本使用

<?php
require_once 'vendor/autoload.php';

use PFinalClub\KeywordRankMonitor\Database;
use PFinalClub\KeywordRankMonitor\KeywordManager;
use PFinalClub\KeywordRankMonitor\RankChecker;

// 初始化数据库
Database::init([
    'host' => 'localhost',
    'dbname' => 'keyword_monitor',
    'username' => 'root',
    'password' => ''
]);

// 添加关键词
$keywordManager = new KeywordManager();
$keywordManager->addKeyword('China Chain Saw', 'https://example.com', 10);

// 检查排名
$rankChecker = new RankChecker();
$rankChecker->checkKeywordRank('China Chain Saw', 'google');

Excel 导入

<?php
use PFinalClub\KeywordRankMonitor\ExcelImporter;

$importer = new ExcelImporter();
$result = $importer->importFromFile('keywords.xlsx');

echo "成功导入: {$result['success_count']} 个关键词\n";
echo "失败: {$result['failed_count']}\n";

🔗 FastAdmin 集成

项目完全兼容 FastAdmin,可以快速集成:

# 1. 安装包
composer require pfinalclub/keyword-rank-monitor

# 2. 导入数据库
mysql -u root -p your_db < database.sql

# 3. 复制示例文件
cp examples/fastadmin_controller.php application/admin/controller/Keywords.php

# 4. 添加菜单
# 在FastAdmin后台执行 examples/fastadmin_menu.sql

详细集成指南请查看:FastAdmin集成指南

🧪 测试

运行单元测试:

# 运行所有测试
php run_tests.php

# 运行特定测试
vendor/bin/phpunit tests/Unit/RankCheckerTest.php

# 运行带覆盖率的测试
vendor/bin/phpunit --coverage-html coverage

📁 项目结构

keyword_search/
├── src/                    # 核心源码
├── examples/              # 使用示例
├── tests/                 # 单元测试
├── docs/                 # 项目文档
├── console.php           # 命令行入口
└── composer.json         # Composer配置

🔧 技术栈

  • PHP 7.4+
  • MySQL/PDO
  • GuzzleHttp - HTTP客户端
  • Symfony DomCrawler - HTML解析
  • PhpSpreadsheet - Excel处理
  • PHPUnit - 单元测试

📊 测试状态

  • ✅ 单元测试:32个测试用例
  • ✅ 无数据库依赖
  • ✅ 快速执行
  • ✅ 高代码覆盖率
  • ✅ FastAdmin 100%兼容

📚 文档

📝 许可证

MIT License

👥 贡献

欢迎提交 Issue 和 Pull Request!

📞 联系方式