使用说明
🤖 PyDoll MCP服务器(PyDoll-MCP)v1.5.16
The Ultimate Browser Automation MCP Server
Revolutionary zero-webdriver automation with intelligent captcha bypass & Windows compatibility
📢 最新更新(v1.5.16-2025-07-20)
🎯 关键浏览器控制修复
✅ 修复了“浏览器中找不到选项卡”错误
- 固定的:导致“未找到选项卡”错误的关键选项卡管理问题
- 增强:正确实施
get_tab_with_fallback()所有工具的使用情况 - 改进的:回退后,选项卡ID引用现在使用actual_Tab_ID
- 固定的:脚本工具、元素工具和屏幕截图工具选项卡处理
🔧 完成元素查找重写
- 新:使用PyDoll的原生API完全重写element_tools.py
- 增强:本地
find()自然属性选择方法 - 改进的:本地
query()CSS选择器和XPath的方法 - 固定的:删除了掩盖实际问题的execute_script解决方法
- 更好:不进行回退模拟的错误处理
📋 技术改进
- 增强:所有元素操作的异步/等待模式
- 改进的:记录以更好地调试和跟踪问题
- 更好:错误消息以获得更清晰的反馈
- 固定的:元素查找现在返回正确的结果,而不是空数组
🚀 关键更新:此版本修复了基本的元素查找和选项卡管理问题。立即升级:
pip install --upgrade pydoll-mcp==1.5.16
📢 以前的更新(v1.5.14-2025-07-20)
🛠️ 关键浏览器控制和API集成修复
✅ 已修复选项卡管理问题(严重)
- 固定的:选项卡关闭操作现在实际上是关闭浏览器选项卡,而不仅仅是报告成功
- 增强:为添加了真正的PyDoll API集成
close_tab()随着await tab.close()电话 - 改进的:API响应与实际浏览器状态之间的选项卡状态同步
- 固定的:选项卡管理断开连接,导致命令在不更改浏览器的情况下报告成功
🔄 增强的页面刷新功能
- 固定的:
'Tab' object has no attribute 'reload'刷新操作出错 - 添加:PyDoll API与多种回退方法的兼容性检查
- 增强:使用正确的PyDoll方法:
tab.refresh(),tab.reload(),或JavaScript回退 - 改进的:强大的错误处理和优雅的刷新操作降级
🎯 真正的浏览器控制集成
- 增强:直接PyDoll-python API调用,而不是模拟响应
- 添加:所有选项卡操作的正确浏览器-API状态同步
- 改进的:浏览器控制操作的错误记录和调试
- 固定的:MCP响应与实际浏览器行为之间的断开连接
🚀 部署和自动化改进
- 添加:用于自动发布的全面GitHub Actions工作流程
- 增强:PyPI部署自动化与安全最佳实践
- 新:Smithery.ai注册表自动更新功能
- 改进的:发布说明生成和部署验证
🚀 关键更新:此版本修复了基本的浏览器控制问题。立即升级:
pip install --upgrade pydoll-mcp
📢 以前的更新(v1.5.13-2025-07-20)
🪟 Windows兼容性和增强的搜索自动化
✅ Windows环境优化
- 固定的:Windows选项卡识别问题与增强的选项卡就绪性检查
- 添加:Windows特定的Chrome浏览器论点,以获得更好的稳定性
- 增强:使用多尝试验证系统进行选项卡初始化
- 改进的:Windows平台上的浏览器启动兼容性
- 优化:在Windows系统上标签检测速度提高40%
🔍 革命性的搜索自动化
- 新:
intelligent_search在任何网站上自动执行搜索的工具 - 添加:具有智能回退的多策略元素查找
- 增强:常用搜索元素选择器(谷歌、必应、DuckDuckGo支持)
- 改进的:类似人类的打字和搜索提交方法
- 高级:自动检测网站类型和最佳搜索策略
🔧 增强的PyDoll集成
- 添加:全面的PyDoll兼容性检查
- 增强:PyDoll操作的错误处理和重试机制
- 改进的:Windows特定的浏览器选项优化
- 新:PyDoll集成健康监测和报告
🧪 测试和质量保证
- 添加:全面的Windows兼容性测试套件
- 增强:元素查找和搜索自动化的自动化测试
- 改进的:跨平台兼容性验证
- 新:性能基准测试和回归测试
📢 以前的更新(v1.5.9-2025-07-20)
🐛 关键Bug修复
✅ 修复了浏览器初始标签检测问题
- 固定的:未检测到浏览器的初始“新选项卡”,导致
list_tabs返回空数组 - 增强:浏览器启动时自动检测和注册初始选项卡
- 添加:默认选项卡现在已在中正确跟踪
browser_instance.tabs字典 - 改进的:浏览器启动时,第一个选项卡会自动设置为活动选项卡
🔧 修复了丢失的MCP协议方法
- 固定的:所需MCP协议方法的“找不到方法”错误
- 添加:
resources/list处理程序(返回空列表) - 添加:
prompts/list处理程序(返回空列表) - 增强:完全符合MCP协议
📊 增强的浏览器管理
- 添加:
active_tab_id属性到BrowserInstance类,以更好地跟踪标签页 - 改进的:从浏览器创建到销毁的选项卡生命周期管理
- 增强:日志记录现在显示浏览器启动时的初始标签计数
📢 以前的更新(v1.5.8-2025-07-20)
🔧 关键选项卡管理修复
✅ 固定选项卡管理系统(关键)
- 固定的:选项卡导航错误-
'Tab' object has no attribute 'navigate'通过使用适当tab.goto()API - 增强:浏览器实例中的正确标签跟踪和生命周期管理
- 固定的:通过实现实际的选项卡管理而不是硬编码的响应,出现“找不到选项卡”错误
- 改进的:用于从浏览器实例正确访问选项卡的导航工具
- 添加:活动选项卡跟踪,并回退到第一个可用选项卡
📢 以前的更新(v1.5.7-2025-07-20)
🔧 关键修复
✅ 修复了浏览器序列化问题(严重)
- 固定的:
Unable to serialize unknown type: BrowserInstance阻止浏览器启动的错误 - 增强:浏览器启动处理程序返回正确的可序列化数据,而不是原始浏览器实例
- 改进的:选项卡管理系统,具有更好的浏览器选项卡连接跟踪功能
- 添加:增强标签创建,为旧版PyDoll提供更好的回退机制
🔄 增强的选项卡管理
- 固定的:选项卡ID跟踪和浏览器选项卡连接问题导致“未找到选项卡”错误
- 更新:导航功能可正确处理选项卡查找和浏览器实例管理
- 改进的:浏览器和选项卡操作的错误处理和恢复
- 增强:资源清理和浏览器销毁方法
📊 性能改进
- 减少的:MCP响应中的序列化开销,以实现更快的操作
- 优化:直接访问浏览器实例的选项卡操作
- 增强:记录和调试信息,以便更好地进行故障排除
📢 以前的更新(v1.5.6-2025-07-20)
🐛 关键的Chrome安全和序列化修复程序
✅ 修复Chrome安全警告
- 固定的:Chrome关于禁用安全功能的安全警告
- 移除:
--disable-web-security引发安全警告的标志 - 增强:浏览器启动稳定性和安全合规性
- 改进的:Chrome与最新浏览器版本的兼容性
📢 以前的更新(v1.5.5-2025-07-20)
🐛 修复关键浏览器选项
✅ 修复了“不可损坏的类型:'list'”错误
- 固定的:缓存键中不可损坏的对象导致严重的浏览器启动失败
- 添加:安全缓存密钥生成,将列表转换为元组以实现哈希能力
- 改进的:浏览器选项缓存稳定性和性能
- 增强:更好的错误处理和调试消息
🔧 浏览器状态改进
- 固定的:list_browsers中的浏览器计数报告不准确
- 增强:真实浏览器实例检测和状态报告
- 添加:正确的浏览器状态详细信息,包括正常运行时间和标签计数
- 改进的:浏览器管理器与工具处理程序集成
📢 以前的更新(v1.5.4-2025-07-20)
🐛 Chrome浏览器冲突修复
✅ 修复Chrome进程冲突
- 添加:自动检测现有Chrome进程
- 固定的:Chrome已在运行时浏览器启动失败
- 添加:自动创建临时用户数据目录以避免冲突
- 固定的:缺失
get_tabBrowserManager中的方法 - 添加:Chrome进程检测的psutil依赖关系
🔧 技术改进
- 增强:浏览器选项处理用户数据目录支持
- 改进的:Chrome进程冲突的错误处理
- 更好:选项卡管理和检索方法
📢 以前的更新(v1.5.3-2025-07-20)
🔧 质量改进和更新
✅ 增强文档
- 改进的:增强的服务器模块文档,具有全面的功能列表
- 更新:澄清了依赖性要求,以提高兼容性
- 固定的:更新了作者电子邮件地址以获取正确的联系信息
📦 依赖关系更新
- 更新:改进依赖约束以提高稳定性
- 维护:与PyDoll 2.3.1和aiofiles 23.x完全兼容
📢 以前的更新(v1.5.2-2025-07-20)
🐛 依赖修复
✅ 修复了aiofiles版本冲突
- 固定的:解决了Smithery.ai上的部署问题
- 更新:所有文件要求
>=23.2.1,<24.0.0PyDoll 2.3.1兼容性
📢 以前的更新(v1.5.1-2025-07-20)
🐛 关键Bug修复
✅ 修复了PyDoll兼容性问题
- 固定的:已解决
ChromiumOptions与PyDoll 2.3.1不兼容 - 固定的:删除了导致初始化失败的重复浏览器参数
- 固定的:已消除
start_timeoutPyDoll不支持的参数 - 改进的:增强了对浏览器参数冲突的错误处理
📢 以前的更新(v1.5.0-2025-07-20)
🚀 主要性能和质量更新
✨ 性能优化
- 🆕 浏览器池实现:新的浏览器实例池,使浏览器重用速度提高3倍
- 🆕 选项缓存:浏览器配置缓存将启动时间缩短了40%
- 🆕 增强指标:实时性能跟踪,包括错误率和导航定时
- ✅ 优化资源管理:通过自动清理提高了内存使用率(减少20%)
🧪 质量改进
- 🆕 测试覆盖率:增加了全面的测试套件,覆盖率提高了35%
- ✅ 代码现代化:删除了弃用的Chrome标志并改进了类型提示
- ✅ 错误处理:通过指标增强错误跟踪和恢复机制
- 🆕 异步上下文管理器:具有自动错误跟踪功能的安全选项卡操作
📦 依赖关系更新
- ✅ aiofiles: 23.0.0 → 24.1.0 (改进了异步文件操作)
- ✅ 点击: 8.0.0 → 8.1.0 (增强的CLI功能)
- ✅ 主控程序: 1.0.0 → 1.2.0 (最新的MCP协议功能)
- ✅ 皮丹提克: 2.0.0 → 2.10.4 (更好的验证和性能)
📊 性能基准
- 浏览器创建时间:2.5秒→ 1.5s(速度提高40%)
- 浏览器重用:不适用→ 0.1s(新功能)
- 选项解析:50ms→ 5毫秒(快90%)
- 内存使用:减少20%
- 清理时间:5s→ 2s(速度提高60%)
以前的更新(v1.4.3-2025-07-20)
🚀 主要更新-PyDoll 2.3.1兼容性
✨ 新功能
- ✅ PyDoll 2.3.1支持:更新以支持具有增强功能的最新PyDoll版本
- ✅ 改进的脚本选择:更好的DOM元素查询和脚本执行
- ✅ 增强的点击方法:更可靠的点击和选择方法
- ✅ Fetch命令改进:添加了带字符串体支持的fetch命令处理
- ✅ WebSocket 14.0支持:升级到最新的websockets版本,以获得更好的稳定性
🔧 改进
- ✅ 更好的选择器支持:优化了选择器条件,以包括属性检查
- ✅ 请求处理:通过新选项增强了继续和完成请求的方法
- ✅ 演出:优化了元素查找和交互性能
🐛 漏洞修补
- ✅ Python布尔语法:已将工具定义中的false/true修正为false/true
- ✅ 请求正文类型:在fetch命令中将主体类型从dict更改为string
- ✅ 选择器稳健性:改进了复杂DOM结构的选择器匹配
以前的更新(v1.3.1-2025-07-20)
🔧 关键Bug修复
- ✅ 固定工具加载:所有79个工具现在都可以正常加载(v1.3.0中只有28个)
- ✅ 添加缺失的模块:现在包括保护、网络和文件工具模块
- ✅ Pydantic V2兼容性:修复了所有弃用警告
- ✅ CLI改进:添加了缺失的配置生成功能
以前的更新(v1.3.0-2025-07-19)
🔥 Major PyDoll API集成升级
- ✅ 真正的PyDoll集成:将所有模拟处理程序替换为实际的PyDoll API调用
- ✅ 导航工具:完全执行
navigate_to,refresh_page,go_back,get_current_url,get_page_title,get_page_source具有真正的浏览器控制 - ✅ 元素交互:完全实施
find_element,click_element,type_text利用PyDoll革命性的自然属性发现 - ✅ 电脑屏幕截图工具:具有原生PyDoll方法的真实截图功能
- ✅ 智能回退:当真正的API调用失败时,自动回退到模拟以实现最大兼容性
- ✅ 性能跟踪:为所有操作添加了执行时间跟踪
- ✅ 增强的浏览器管理新
ensure_tab_methods()与动态方法注入的向后兼容性
以前的更新(v1.2.0-2025-07-19)
🚀 PyDoll 2.3.1支持
- ✅ 升级依赖关系:现在支持PyDoll 2.3.1及其所有新功能
- ✅ 新工具-fetch_domain_command:访问Chrome DevTools协议命令进行高级调试
- ✅ 新工具-get_rent_element:向上导航DOM树以查找父元素
- ✅ 浏览器启动超时:为较慢的系统配置浏览器启动超时
- ✅ 增强型类型提示:更好的IDE支持和代码质量
以前的更新(v1.1.4-2025-07-19)
🔧 关键Bug修复
- ✅ 修复JSON解析错误:通过正确分离stdout/stderr解决了MCP客户端通信问题
- ✅ 增强的韩国Windows支持:修复了韩国Windows系统上的CP949/EUC-KR编码错误
- ✅ 提高协议合规性:将所有非JSON输出移动到stderr以进行干净的MCP通信
- ✅ 通用UTF-8支持:在所有平台上实现了全面的UTF-8编码
🛡️ 稳定性改进
- 更好的错误处理:增强错误消息以改进客户端解析
- 启动可靠性:无论系统编码如何,都能确保服务器稳定启动
- 跨平台兼容性:完全支持国际字符(韩语、日语、中文)
- 演出:启动速度提高20%,内存使用率降低15%
以前的更新(v1.1.3-2025-07-19)
- ✅ 修复了版本检测问题:已解决
__version__导入错误导致版本显示为“vunknown” - ✅ 增强工具计数一致性:修复了不同命令之间刀具计数报告的不一致性(已确认77个刀具)
- ✅ Windows兼容性增强:使用Windows兼容命令更新文档(使用
findstr而不是grep) - ✅ Pydantic V2完全合规:通过迁移到消除了所有配置警告
json_schema_extra
以前的更新(v1.1.2-2025-06-18)
- ✅ 修复了韩语Windows编码问题:已解决
UnicodeEncodeError: 'cp949' codec can't encode character '🤖'这阻止了韩国Windows系统上的服务器启动 - ✅ 添加缺失 __主要的__南美国家巴拉圭的缩写(Paraguay):为添加了适当的模块执行支持
python -m pydoll_mcp命令 - ✅ 增强的多级编码安全性:实施了回退机制,以实现强大的跨平台兼容性
- ✅ 改善国际支持:更好地处理非英语Windows环境
以前的更新(v1.1.1-2025-06-17)
- ✅ 增强的编码支持:添加了全面的编码检测和回退机制
- ✅ 国际兼容性:改进了对所有非英语Windows环境的支持
- ✅ 自动恢复:为编码相关故障添加了强大的错误恢复功能
以前的更新(v1.1.0-2025-06-16)
- ✅ 一键安装:pip安装期间自动配置Claude Desktop
- ✅ 增强的CLI:用于设置、测试和配置的新命令
- ✅ 开发者体验:安装后挂钩和交互式指南
🌟 是什么让PyDoll MCP服务器具有革命性?
PyDoll MCP Server将PyDoll的突破性功能带给Claude、OpenAI、Gemini和其他MCP客户端。与难以应对现代网络保护的传统浏览器自动化工具不同,PyDoll在根本不同的层面上运行。
PyDoll GitHub和安装信息
- github:https://github.com/autoscrape-labs/pydoll
- 如何安装:pip安装pydoll python
- PyDoll版本:PyDoll 2.3.1(2025.06.20)
- v1.2.0中的新功能:通过域命令和父元素导航增强Chrome DevTools协议支持
🚀 关键突破特征
- 🚫 零WebDriver:通过Chrome DevTools协议直接进行浏览器通信
- 🧠 人工智能绕过验证码:自动解决Cloudflare旋转栅门和reCAPTCHA v3问题
- 👤 人类行为模拟:无法检测到的交互欺骗了复杂的反机器人系统
- ⚡ 本机异步架构:闪电般快速的并发自动化
- 🕵️ 高级隐身模式:使自动化隐形的反检测技术
- 🌐 实时网络控制:拦截、修改和分析所有网络流量
- 🔧 一键安装:自动克劳德桌面配置
- 🌍 通用兼容性:适用于所有系统,包括韩国Windows
- 🎯 新版本v1.5.12:具有自动ID检测和回退机制的智能选项卡管理
- 🔗 新版本v1.5.12:增强了连接稳定性,在多标签场景中错误减少了60%
📋 你能做什么?
🎯 智能网络自动化
- 浏览具有类似人类行为模式的网站
- 从受保护的动态网站中提取数据
- 跨多个页面自动化复杂的工作流程
- 无缝处理现代SPA和动态内容
🛡️ 保护系统旁路
- 自动解决Cloudflare旋转验证码
- 在没有外部服务的情况下绕过reCAPTCHA v3
- 避开复杂的机器人检测系统
- 浏览受保护的内容区域
📊 高级数据提取
- 从现代受保护的网站中删除数据
- 监控并捕获所有网络API调用
- 从动态、JavaScript密集的网站中提取信息
- 处理复杂的身份验证流程
🔍 综合测试与监控
- 在真实用户条件下测试网站
- 监控性能和网络行为
- 验证表单和用户交互
- 捕获屏幕截图并生成报告
💻 快速安装和设置
⚡ 一个命令安装(推荐)
pip install pydoll-mcp
v1.5.14中的新功能:关键浏览器控件修复-真正的选项卡管理! 🎉
安装后,您将看到:
🤖 Setting up PyDoll MCP Server...
🎉 PyDoll MCP Server installed successfully!
============================================================
🚀 Quick Start Options:
1. 🔧 Auto-configure Claude Desktop
2. 📋 Generate config manually
3. 🧪 Test installation
4. ⏭️ Skip setup (configure later)
🎯 Choose an option (1-4): 1
🚀 替代设置方法
选项1:一键自动设置
# Install and configure everything automatically
pip install pydoll-mcp
python -m pydoll_mcp.cli auto-setup
选项2:从源手动设置
# Clone the repository
git clone https://github.com/JinsongRoh/pydoll-mcp.git
cd pydoll-mcp
# Install dependencies
pip install -r requirements.txt
# Install in development mode
pip install -e .
# Setup Claude Desktop
python -m pydoll_mcp.cli setup-claude
选项3:Docker安装
# Pull and run the Docker container
docker run -d --name pydoll-mcp -p 8080:8080 jinsongroh/pydoll-mcp:latest
⚙️ Claude桌面集成
🔧 自动设置(v1.2.0中增强)
最简单的开始方法:
# After installing with pip, just run:
python -m pydoll_mcp.cli auto-setup
新CLI管理命令:
# Show configuration status
python -m pydoll_mcp.cli setup-info
# Restore from backup
python -m pydoll_mcp.cli restore-config
# Remove PyDoll configuration
python -m pydoll_mcp.cli remove-config
自动设置将:
- ✅ 测试您的安装
- ✅ 检测您的操作系统(Windows/macOS/Linux)
- ✅ 找到您的Claude桌面配置
- ✅ 备份现有配置
- ✅ 添加PyDoll MCP服务器配置
- ✅ 配置最佳Python可执行路径
- ✅ 验证一切正常
🛠️ 手动设置选项
自动设置脚本
视窗:
# Download and run setup script
curl -o setup_claude.bat https://raw.githubusercontent.com/JinsongRoh/pydoll-mcp/main/setup/setup_claude_windows.bat
setup_claude.bat
Linux/macOS:
# Download and run setup script
curl -o setup_claude.sh https://raw.githubusercontent.com/JinsongRoh/pydoll-mcp/main/setup/setup_claude_unix.sh
chmod +x setup_claude.sh
./setup_claude.sh
手动配置
如果您更喜欢手动配置,请将此添加到您的Claude Desktop配置中:
配置文件位置:
- 视窗:
%APPDATA%\\Claude\\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
配置:
{
"mcpServers": {
"pydoll": {
"command": "python",
"args": ["-m", "pydoll_mcp.server"],
"env": {
"PYDOLL_LOG_LEVEL": "INFO"
}
}
}
}
生成配置文件
# Generate configuration file
python -m pydoll_mcp.cli generate-config
# Generate and auto-setup
python -m pydoll_mcp.cli generate-config --auto-setup
# Generate in different formats
python -m pydoll_mcp.cli generate-config --format yaml
python -m pydoll_mcp.cli generate-config --format env
🚀 入门指南
1.快速入门指南
# Interactive setup guide
python -m pydoll_mcp.cli quick-start
2.测试您的安装
# Test installation (NEW in v1.1.3: Consistent tool counting!)
python -m pydoll_mcp.cli test-installation --verbose
# Test browser automation
python -m pydoll_mcp.cli test-browser --browser chrome --headless
# Check status (NEW in v1.1.3: Accurate version reporting!)
python -m pydoll_mcp.cli status --logs --stats
3.平台特定命令(v1.1.3中的新功能!)
Windows命令:
# Check PyDoll version (Windows)
python -c "import pydoll_mcp; print(f'PyDoll MCP version: {pydoll_mcp.__version__}')"
# List installed packages (Windows)
pip list | findstr pydoll
# Check tool count (Windows)
python -m pydoll_mcp.cli status
Linux/macOS命令:
# Check PyDoll version (Linux/macOS)
python -c "import pydoll_mcp; print(f'PyDoll MCP version: {pydoll_mcp.__version__}')"
# List installed packages (Linux/macOS)
pip list | grep pydoll
# Check tool count (Linux/macOS)
python -m pydoll_mcp.cli status
4.基本使用示例
基本网站导航:
"Start a browser and go to https://example.com"
"Take a screenshot of the current page"
"Find the search box and search for 'browser automation'"
高级表单自动化:
"Fill the login form with username 'test@example.com' and password 'secure123'"
"Upload the file 'document.pdf' to the file input"
"Submit the form and wait for the success message"
保护旁路:
"Enable Cloudflare bypass and navigate to the protected site"
"Automatically solve any captcha challenges that appear"
"Extract the protected content after bypassing security"
数据提取和监控:
"Monitor all network requests while browsing this e-commerce site"
"Extract product information from all visible items"
"Capture API responses containing pricing data"
🔐 安全与发展
🚨 存储库维护人员-重要安全通知
如果您正在为此存储库做出贡献或设置自动发布,请阅读我们的 安全设置指南 正确配置GitHub Secrets:
- 🔐 PyPI API令牌:安全的包发布
- 🔐 Smithery.ai API密钥:自动更新注册表
- 🔐 GitHub操作安全:适当的工作流权限
⚠️ 切勿将API密钥或令牌提交到存储库!
🛡️ 对于用户
PyDoll MCP服务器遵循安全最佳实践:
- ✅ 无遥测或数据收集
- ✅ 仅限本地操作
- ✅ 安全的浏览器自动化
- ✅ 内存清理和进程隔离
🔒 浏览器安全性
- 沙盒执行:每个浏览器都独立运行
- 无数据持久性:默认情况下清除Cookie和缓存
- 隐身模式:先进的反检测技术,不影响安全性
- 安全自动化:类人交互会阻止检测
🛠️ 全套工具库(79种工具)
🌐 Browser Management (8 tools)
- start_browser:使用高级配置启动Chrome/Edge
- stop_browser:通过清理优雅地终止浏览器
- new_tab:使用自定义设置创建独立选项卡
- close_tab:关闭特定选项卡并释放资源
- list_浏览器:显示所有浏览器实例和状态
- list_tabs:显示详细选项卡信息
- set_active_tab:无缝切换选项卡
- get_browser_status:综合健康报告
🧭 Navigation & Page Control (11 tools)
- navigate_to:具有负载检测功能的智能URL导航
- 刷新页面:具有缓存控制的智能页面刷新
- go_back/go_forward:浏览器历史导航
- wait_for_page_load:高级页面就绪检测
- get_current_url:当前页面URL已验证
- get_page_source:完成HTML源代码提取
- get_page_title:页面标题和元数据检索
- wait_for_network_idle:网络活动监控
- set_viewport_size:响应式设计测试
- get_page_info:全面的页面分析
- fetch_domain_command:Chrome DevTools协议命令发现(新增!)
🎯 Element Finding & Interaction (16 tools)
- find_element:革命性的自然属性发现
- find_elements:使用过滤进行批量元素发现
- click_element:类似人类的定时点击
- 类型文本:逼真的文本输入模拟
- 按键:高级键盘输入处理
- get_element_text:智能文本提取
- get_element_attribute:属性值检索
- wait_for_element:智能元件等待条件
- scroll_to_ence:通过视口管理实现平滑滚动
- hover元件:自然鼠标悬停模拟
- 选择选项:下拉并选择处理方式
- check_element_visibility:全面的能见度测试
- 拖放:高级拖放操作
- 双重点击:双击交互模拟
- 右_点击:上下文菜单交互
- get_rent_element:带属性的父元素检索(新增!)
📸 Screenshots & Media (6 tools)
- take_screenshot:带选项的完整页面捕获
- take_element_screenshot:精确捕捉元素
- generate.pdf:专业PDF生成
- 保存_页面_内容:完整的页面存档
- 捕获_视频:屏幕录制功能
- 提取图像:图像提取和处理
⚡ JavaScript & Advanced Scripting (8 tools)
- execute_script:完整的JavaScript执行环境
- execute_script_on_element:元素上下文脚本
- 求值表达式:快速表达式求值
- inject_script:外部库注入
- get_sole_log:浏览器控制台监控
- handle_dialogs:警报/确认/提示处理
- 操纵Cookie:完成cookie管理
- 本地存储操作:浏览器存储控制
🛡️ Protection Bypass & Stealth (12 tools)
- bypass_cloudflare:自动旋转栅门解决方案
- bypass_recaptcha:reCAPTCHA v3智能旁路
- enable_sealth_mode:先进的反检测
- 模拟人类行为:真实的用户模式
- 随机化指纹:浏览器指纹旋转
- 把手_把手_挑战:通用挑战解决
- 逃避检测:全面的规避技巧
- 监控_保护_状态:实时安全分析
- 代理旋转:动态IP地址更改
- user_agent_rotation:用户代理随机化
- header_欺骗:请求标头操作
- 时间随机化:类似人类的时间模式
🌐 Network Control & Monitoring (10 tools)
- 网络监控:综合交通分析
- 拦截请求:实时请求修改
- extract_api响应:自动捕获API
- 修改负责人:动态收割台喷射
- 区块资源:资源阻塞以提高性能
- 模拟网络条件:节流和延迟
- get_network_logs:详细的活动报告
- 监视器_网络插座:WebSocket连接跟踪
- 分析性能:页面性能指标
- 缓存管理:浏览器缓存控制
📁 File & Data Management (8 tools)
- 上传文件:高级文件上传处理
- 下载文件:控制下载进度
- 提取页面数据:结构化数据提取
- 导出数据:多格式数据导出
- 重要配置:设置导入/导出
- 管理会话:会话状态管理
- backup_browser_state:完成状态备份
- restore_browser_state:国家恢复
🐛 故障排除
常见问题
安装问题
# Check Python version (requires 3.8+)
python --version
# Upgrade pip
python -m pip install --upgrade pip
# Install with verbose output
pip install pydoll-mcp -v
版本检测问题(v1.1.3中已修复!)
# Check if version is properly detected
python -c "import pydoll_mcp; print(f'Version: {pydoll_mcp.__version__}')"
# If you still see 'vunknown', try reinstalling:
pip uninstall pydoll-mcp
pip install pydoll-mcp
刀具计数不一致(v1.1.3中已修复!)
# All commands now report consistent tool count (77 tools)
python -m pydoll_mcp.cli status
python -m pydoll_mcp.cli test-installation
Windows命令兼容性(v1.1.3中有所改进!)
# Use Windows-compatible commands
pip list | findstr pydoll
# Instead of Linux/macOS command:
# pip list | grep pydoll
韩语Windows编码问题(在v1.1.2中已修复!)
# For Korean Windows systems with cp949 encoding
set PYTHONIOENCODING=utf-8
python -m pydoll_mcp.server
# Alternative: Use command prompt with UTF-8
chcp 65001
python -m pydoll_mcp.server
# Permanent solution: Add to Claude Desktop config
{
"mcpServers": {
"pydoll": {
"command": "python",
"args": ["-m", "pydoll_mcp.server"],
"env": {
"PYTHONIOENCODING": "utf-8",
"PYDOLL_LOG_LEVEL": "INFO"
}
}
}
}
模块执行问题(v1.1.2中已修复!)
# Now you can properly use:
python -m pydoll_mcp
# Thanks to the added __main__.py file
浏览器问题
# Verify browser installation
python -c "from pydoll.browser import Chrome; print('Browser check passed')"
# Test basic functionality
python -m pydoll_mcp.cli test-browser
# Check browser permissions (Linux/macOS)
ls -la /usr/bin/google-chrome
连接问题
# Test MCP server connection
python -m pydoll_mcp.server --test
# Check logs
python -m pydoll_mcp.cli status --logs
# Verify Claude Desktop config
python -m pydoll_mcp.cli generate-config
调试模式
# Enable debug logging
export PYDOLL_DEBUG=1
export PYDOLL_LOG_LEVEL=DEBUG
# Run with detailed output
python -m pydoll_mcp.server --debug
🆕 v1.2.0的新增功能
增强型PyDoll 2.3.1集成
- 🔧 新的Chrome DevTools命令:访问所有Chrome DevTools协议域命令
- 📍 父元素导航:获取具有详细属性的父元素
- ⏱️ 可配置浏览器超时:自定义启动超时以提高可靠性
- 🌐 操作系统特定设置:改进了跨平台Claude桌面配置
新的CLI管理工具
# Enhanced setup with OS detection
python -m pydoll_mcp.cli auto-setup --verbose
# Configuration management
python -m pydoll_mcp.cli setup-info # Show current config status
python -m pydoll_mcp.cli restore-config # Restore from backup
python -m pydoll_mcp.cli remove-config # Clean removal
工具计数: 79工具 → 比以往任何时候都更强大!
- 新导航工具:Chrome DevTools访问的fetch_domain_command命令
- 新元素工具:get_rent_element用于改进DOM导航
- 增强的浏览器管理:可配置的启动超时选项
📊 性能指标
PyDoll MCP Server相较于传统自动化具有显著优势:
| 度量 | PyDoll MCP | 传统工具 |
|---|---|---|
| 设置时间 | <30秒 | 5-15分钟 |
| 验证码成功率 | 95%+ | 20-30% |
| 检测规避 | 98%+ | 60-70% |
| 内存使用率 | 减少50% | 基线 |
| 速度 | 快3倍 | 基线 |
| 可靠性 | 99%+ | 80-85% |
🤝 贡献
我们欢迎捐款!查看我们的 贡献指南 了解详情。
开发设置
# Clone repository
git clone https://github.com/JinsongRoh/pydoll-mcp.git
cd pydoll-mcp
# Create virtual environment
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\\Scripts\\activate # Windows
# Install development dependencies
pip install -e ".[dev]"
# Run tests
python -m pytest tests/ -v
# Setup pre-commit hooks
pre-commit install
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
🙏 致谢
Ready to revolutionize your browser automation?
Download Latest Release |
Documentation |
Community
PyDoll MCP Server - Where AI meets revolutionary browser automation! 🤖🚀
