截图上传工具

一个自动将电脑截图上传至Google Drive的工具,支持自动整理和团队共享。

  • by dwardy0101
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 dwardy0101/Screenshot-Uploader-for-Mobile-MCP

使用说明

将截图上传到谷歌云端硬盘-用户指南

📋 这是什么?

此工具可帮助您自动将屏幕截图从计算机上传到Google Drive。它对于与团队共享测试截图特别有用。

您将获得:

  • ✅ 自动将截图上传到谷歌云端硬盘
  • ✅ 将屏幕截图整理到文件夹中
  • ✅ 轻松与您的团队分享截图
  • ✅ 无需通过浏览器手动上传文件

🚀 快速入门(如果你只是想使用它)

如果其他人已经为您设置了Google Cloud部分:

  1. 确保您有凭据文件

    • 询问您的团队负责人凭据文件的位置(.google_drive_credentials.json 或 google_drive_credentials.json)
    • 您需要将其复制到主文件夹
  2. 安装所需工具

    cd /path/to/NativeCamp-Android
    npm install googleapis open
    
  3. 选择您的使用方法:

    选项A:手动上传(一次一个)

    node scripts/upload_screenshot_to_drive.js /path/to/your/screenshot.png
    

    选项B:自动上传(建议移动MCP用户使用)

    • 看 自动上传部分 在......下面
    • 只需运行监视器脚本,所有移动MCP屏幕截图就会自动上传!
  4. 按照提示操作 (仅限第一次)

    • 浏览器窗口将打开
    • 使用您的Google帐户登录
    • 请求权限时单击“允许”
    • 完成!您的屏幕截图已上传(或未来的屏幕截图将自动上传)。

就是这样! 你已经准备好使用它了。


📝 先决条件清单

在开始之前,请确保您已经:

  • [ ] 已安装Node.js 在您的计算机上

    • 不确定?打开终端/命令提示符并键入: node --version
    • 如果你看到一个版本号(如 v18.0.0)你做得很好!
    • 如果您看到“找不到命令”,请从以下网址下载 nodejs.org
  • [ ] Google帐户 (任何Gmail帐户都可以使用)

  • [ ] 访问谷歌云控制台

    • 您需要获得创建项目的许可(如果不确定,请咨询您的经理)

🛠️ 完整设置说明

QA/测试人员注意事项:如果你的团队有一个共享的谷歌云设置,你可以跳过步骤1-4,只使用你的团队提供的凭据文件。请先询问您的团队负责人!

第1部分:设置谷歌云(一次性设置)

第一步:创建谷歌云项目

  1. 打开您的网络浏览器,然后转到: https://console.cloud.google.com/
  2. 使用您的Google帐户登录
  3. 在页面顶部,您将看到一个下拉列表,其中可能会显示“选择项目”或显示项目名称
    • 点击此下拉菜单
  4. 点击 “新项目” 按钮(或“创建项目”)
  5. 填写:
    • 项目名称:“截图上传器”(或您喜欢的任何名称)
    • 组织:默认保留(除非贵公司另有要求)
  6. 点击 “创建” 按钮
  7. 等待几秒钟以创建项目
  8. 确保在顶部的下拉列表中选择了新项目

你会看到什么:您的新项目名称应显示在页面顶部。


步骤2:启用Google Drive API

API就像一个允许该工具与Google Drive对话的权限。

  1. 在页面左侧,单击 ☰ 菜单图标 (三条水平线,也称为“汉堡菜单”)
  2. 寻找 “API和服务” 在菜单中单击它
  3. 点击 “图书馆” 从子菜单
  4. 在顶部的搜索框中,键入: “Google Drive API”
  5. 你应该看到“谷歌驱动器API”出现-点击它
  6. 在下一页,单击蓝色大图标 “启用” 按钮
  7. 等一下,你会看到一条消息,说它已启用

你会看到什么:包含有关Google Drive API的信息和绿色复选标记或成功消息的页面。


步骤3:创建OAuth凭据(允许您上传的密钥)

OAuth只是谷歌验证是否真的是你上传文件的一种安全方式。

首先,设置OAuth同意屏幕:

  1. 仍在Google Cloud控制台中,单击 “API和服务” → “OAuth同意屏幕” (在左侧菜单中)
  2. 您将看到一个关于选择哪种类型的应用程序的问题 “外部” (除非贵公司使用Google Workspace)
  3. 点击 “创建”
  4. 请填写以下字段:
    • 应用程序名称:“截图上传器”
    • 用户支持电子邮件:您的电子邮件地址
    • 开发人员联系信息:您的电子邮件地址
  5. 点击 “保存并继续”
  6. 在“范围”页面上,只需单击 “保存并继续” (默认值很好)
  7. 在“测试用户”页面上:
    • 如果您看到您的电子邮件已列出,请单击 “保存并继续”
    • 如果没有,请单击 “添加用户”,键入您的电子邮件,单击 **“添加”**那么 “保存并继续”
  8. 查看摘要并单击 “返回仪表板”

现在创建OAuth客户端:

  1. 点击 “API和服务” → “凭据” (在左侧菜单中)
  2. 在顶部,单击 “+创建凭据” 按钮
  3. 点击 “OAuth客户端ID” 从下拉列表中
  4. 您将看到一张表格,请填写:
    • 应用程序类型:选择 “桌面应用程序” 从下拉列表中
    • 名字:“屏幕截图桌面工具”(或任何名称)
  5. 点击 “创建”
  6. 将出现一个弹出窗口,显示您的客户端ID和客户端密码
    • ⚠️ 你不需要复制这些 -我们将下载一个文件
    • 点击 好的 关闭弹出窗口

你会看到什么:您的新OAuth客户端将出现在“OAuth 2.0客户端ID”下的列表中。


步骤4:下载您的凭据文件

此文件包含使该工具连接到Google Drive的密钥。

  1. 在“凭据”页面中,找到您的OAuth客户端(您刚刚创建的客户端)

  2. 你会看到一个 下载图标(⬇️) 在行的末尾单击它

    • 或者单击OAuth客户端的名称,然后查找下载按钮
  3. 将下载一个文件(通常到您的下载文件夹)

    • 文件名将类似于 client_secret_123456789-abc.apps.googleusercontent.com.json
  4. 重命名并移动此文件:

    选项A:可见文件名(在Mac上更容易-推荐)

    • 在Mac上:
      • 打开查找器
      • 按 Cmd + Shift + G (或前往go→ 转到文件夹)
      • 类型: ~ 然后按Enter键(这将打开您的主文件夹)
      • 将下载的文件从下载复制到此文件夹
      • 将其重命名为: google_drive_credentials.json (无需点!)
    • 在Windows上:
      • 打开文件资源管理器
      • 导航到: C:\Users\YourUsername\ (用您的实际用户名替换您的用户名)
      • 将下载的文件从下载复制到此文件夹
      • 将其重命名为: google_drive_credentials.json
    • 在Linux上:
      • 移动文件: mv ~/Downloads/client_secret_*.json ~/google_drive_credentials.json

    选项B:隐藏文件名(如果您喜欢隐藏文件)

    • 使用上述相同的步骤,但命名它 .google_drive_credentials.json (带圆点)
    • 备注:在Mac上,Finder不允许您创建以点开头的文件。请改用终端:
      mv ~/Downloads/client_secret_*.json ~/.google_drive_credentials.json
      
  5. 验证它是否在正确的位置:

    • Mac/Linux:开放式终端和类型:
      ls -la ~/google_drive_credentials.json
      # or if using hidden version:
      ls -la ~/.google_drive_credentials.json
      
    • 视窗:打开PowerShell并键入:
      Test-Path $env:USERPROFILE\google_drive_credentials.json
      # or if using hidden version:
      Test-Path $env:USERPROFILE\.google_drive_credentials.json
      
    • 您应该看到显示的文件路径(如果显示“False”或“未找到”,则表示文件不在正确的位置)

你会看到什么:主文件夹中名为的文件 google_drive_credentials.json (或 .google_drive_credentials.json 如果使用隐藏版本)

备注:脚本支持两个文件名!在Mac上的Finder中更容易创建可见版本(没有点)。


步骤5:设置重定向URI

这条消息告诉谷歌在你登录后将你发送到哪里。

  1. 返回谷歌云控制台→ “API和服务” → “凭据”
  2. 点击您的OAuth客户端名称(您创建的名称)
  3. 向下滚动至 “授权重定向URI” 章节
  4. 点击 “+添加URI” 按钮
  5. 准确键入: http://localhost:8080
  6. 点击 “保存” 在底部

你会看到什么:您的重定向URI已添加到列表中。


第2部分:安装所需工具

  1. 开放式终端(Mac/Linux)或命令提示符/PowerShell(Windows)

  2. 导航到项目文件夹:

    cd /path/to/NativeCamp-Android
    

    (替换为实际项目路径)

  3. 安装所需的软件包:

    npm install googleapis open
    
  4. 等待安装完成 -完成后,您将看到一条消息

你会看到什么:大量的文本滚动,以“添加的X包”或类似内容结尾。


🎯 如何使用该工具

第一次:身份验证

第一次使用该工具时,您需要登录谷歌。

  1. 截图 或者找到要上传的图像文件

  2. 打开终端/命令提示符 并运行:

    node scripts/upload_screenshot_to_drive.js /path/to/your/screenshot.png
    

    (替换 /path/to/your/screenshot.png 使用文件的实际路径)

  3. 接下来会发生什么:

    • 该工具检查您的凭据文件✅
    • 您的网络浏览器将自动打开(或者您将看到一个要复制的URL)
    • 你会看到一个谷歌登录页面
    • 登录 使用您的Google帐户
    • 您将看到一个请求权限的页面-单击 “允许” 或 “继续”
    • 您的浏览器将显示“身份验证成功!”
    • 关闭浏览器选项卡 然后返回航站楼
  4. 就是这样! 该工具已保存您的登录信息,因此您无需再次执行此操作。

您将在Terminal中看到:

Authenticating with Google Drive...
Finding or creating folder 'MCP Screenshots'...
Uploading screenshot.png as screenshot_20250124_143022.png...

✅ Upload successful!
   File ID: 1a2b3c4d5e6f7g8h9i0j
   File Name: screenshot_20250124_143022.png
   View Link: https://drive.google.com/file/d/...

常规用法:上传截图

首次设置后,上传非常简单:

选项1:上传到默认文件夹

node scripts/upload_screenshot_to_drive.js /path/to/screenshot.png

这会上传到Google Drive中名为“MCP截图”的文件夹。

选项2:上传到自定义文件夹

node scripts/upload_screenshot_to_drive.js /path/to/screenshot.png --folder-name "Test Results"

这会上传到一个名为“测试结果”的文件夹(如果不存在,则创建它)。


📸 常见用法示例

示例1:从桌面上传屏幕截图

雨衣:

node scripts/upload_screenshot_to_drive.js ~/Desktop/screenshot.png

窗户:

node scripts/upload_screenshot_to_drive.js C:\Users\YourName\Desktop\screenshot.png

示例2:将多个屏幕截图上传到不同的文件夹

# Upload bug screenshot to "Bugs" folder
node scripts/upload_screenshot_to_drive.js ~/Desktop/bug1.png --folder-name "Bugs"

# Upload feature screenshot to "New Features" folder
node scripts/upload_screenshot_to_drive.js ~/Desktop/feature1.png --folder-name "New Features"

示例3:从临时文件夹上传截图

如果MCP工具将屏幕截图保存到 /tmp:

node scripts/upload_screenshot_to_drive.js /tmp/screenshot.png --folder-name "MCP Tests"

💡 测试人员提示

提示1:按试运行组织

为不同的测试会话创建文件夹:

node scripts/upload_screenshot_to_drive.js screenshot.png --folder-name "Test Run - 2025-01-24"

提示2:按Bug或功能组织

# For bugs
node scripts/upload_screenshot_to_drive.js bug_screenshot.png --folder-name "Bug Reports"

# For new features
node scripts/upload_screenshot_to_drive.js feature_screenshot.png --folder-name "Feature Tests"

提示3:使用Alias快速访问(Mac/Linux)

将此添加到您的 ~/.zshrc 或 ~/.bashrc 文件:

alias upload-screenshot='node /path/to/NativeCamp-Android/scripts/upload_screenshot_to_drive.js'

然后重新加载:

source ~/.zshrc

现在,您只需键入:

upload-screenshot ~/Desktop/test.png

🤖 使用Cursor AI Mobile MCP自动上传

这是什么?

使用时 带有移动MCP的光标AI 要截图,您可以设置自动上传,这样每个截图都会立即上传到谷歌云端硬盘。无需手动命令!

运作原理

当Mobile MCP进行屏幕截图时,它会将文件保存到您计算机上的某个位置。我们将设置一个“监视器”,自动检测新的屏幕截图文件并为您上传。


选项1:文件监视器脚本(推荐)

此脚本会监视一个文件夹中的新屏幕截图,并自动上传。

步骤1:创建观察者脚本

创建一个名为的新文件 auto_upload_screenshots.js 在 scripts 文件夹:

#!/usr/bin/env node
/**
 * Automatic screenshot uploader for Mobile MCP
 * Watches a folder for new screenshots and uploads them automatically
 */

const fs = require('fs');
const path = require('path');
const { uploadFileToDrive } = require('./upload_screenshot_to_drive.js');

// Configuration
const WATCH_FOLDER = process.env.MCP_SCREENSHOT_FOLDER || '/tmp';
const DRIVE_FOLDER = process.env.MCP_DRIVE_FOLDER || 'MCP Screenshots';
const FILE_PATTERN = /\.(png|jpg|jpeg|gif|webp)$/i; // Screenshot file extensions

console.log(`👀 Watching folder: ${WATCH_FOLDER}`);
console.log(`📁 Uploading to Google Drive folder: "${DRIVE_FOLDER}"`);
console.log(`\nPress Ctrl+C to stop watching...\n`);

// Track uploaded files to avoid duplicates
const uploadedFiles = new Set();

function uploadScreenshot(filePath) {
  const fileKey = path.basename(filePath);
  
  // Skip if already uploaded
  if (uploadedFiles.has(fileKey)) {
    return;
  }

  // Check if file exists and is readable
  if (!fs.existsSync(filePath)) {
    return;
  }

  console.log(`📸 New screenshot detected: ${path.basename(filePath)}`);
  console.log(`⏳ Uploading...`);

  uploadFileToDrive(filePath, DRIVE_FOLDER)
    .then((fileId) => {
      uploadedFiles.add(fileKey);
      console.log(`✅ Uploaded successfully! (ID: ${fileId})\n`);
    })
    .catch((error) => {
      console.error(`❌ Upload failed: ${error.message}\n`);
    });
}

// Watch for new files
fs.watch(WATCH_FOLDER, { recursive: false }, (eventType, filename) => {
  if (!filename || eventType !== 'rename') {
    return;
  }

  const filePath = path.join(WATCH_FOLDER, filename);
  
  // Check if it's a screenshot file
  if (!FILE_PATTERN.test(filename)) {
    return;
  }

  // Small delay to ensure file is fully written
  setTimeout(() => {
    try {
      const stats = fs.statSync(filePath);
      if (stats.isFile()) {
        uploadScreenshot(filePath);
      }
    } catch (err) {
      // File might not exist yet, ignore
    }
  }, 500);
});

// Also check for existing files on startup (optional)
console.log('Checking for existing screenshots...');
fs.readdir(WATCH_FOLDER, (err, files) => {
  if (err) {
    console.warn(`⚠️  Could not read folder: ${err.message}`);
    return;
  }

  files
    .filter(file => FILE_PATTERN.test(file))
    .forEach(file => {
      const filePath = path.join(WATCH_FOLDER, file);
      setTimeout(() => uploadScreenshot(filePath), 1000);
    });
});

步骤2:使其可执行(Mac/Linux)

chmod +x scripts/auto_upload_screenshots.js

步骤3:查找Mobile MCP保存屏幕截图的位置

当您在Cursor中使用Mobile MCP进行屏幕截图时,请检查输出-它通常会显示文件的保存位置。常见位置:

  • /tmp/screenshot.png
  • /tmp/mcp_screenshot_*.png
  • ~/Desktop/screenshot.png

或者查看Cursor的移动MCP设置/文档以获取截图路径。

步骤4:运行监视器

# If screenshots go to /tmp (default)
node scripts/auto_upload_screenshots.js

# Or specify a custom folder
MCP_SCREENSHOT_FOLDER=~/Desktop node scripts/auto_upload_screenshots.js

# Or specify a custom Google Drive folder name
MCP_DRIVE_FOLDER="Test Run - $(date +%Y-%m-%d)" node scripts/auto_upload_screenshots.js

第五步:保持运行

  • 选项A:在单独的终端窗口中运行 让它打开
  • 选项B:在后台运行 (Mac/Linux):
    nohup node scripts/auto_upload_screenshots.js > /tmp/screenshot_uploader.log 2>&1 &
    
  • 选项C:使用终端多路复用器 喜欢 tmux 或 screen

发生了什么:

  • 脚本监视文件夹中的新屏幕截图文件
  • 当Mobile MCP保存屏幕截图时,脚本会自动检测到它
  • 截图已上传到谷歌云端硬盘
  • 您在终端中看到一条确认消息

选项2:包装脚本(备选)

如果你喜欢在每次截图后手动调用上传脚本,你可以使用包装器:

步骤1:创建包装脚本 upload_latest_mcp_screenshot.sh:

#!/bin/bash
# Uploads the most recent screenshot from MCP

SCREENSHOT_DIR="/tmp"
LATEST_SCREENSHOT=$(ls -t "$SCREENSHOT_DIR"/mcp_screenshot_*.png 2>/dev/null | head -1)

if [ -z "$LATEST_SCREENSHOT" ]; then
    echo "❌ No MCP screenshot found in $SCREENSHOT_DIR"
    exit 1
fi

echo "📸 Uploading latest screenshot: $(basename "$LATEST_SCREENSHOT")"
node scripts/upload_screenshot_to_drive.js "$LATEST_SCREENSHOT" --folder-name "MCP Screenshots"

步骤2:使其可执行:

chmod +x scripts/upload_latest_mcp_screenshot.sh

步骤3:截图后使用:

# After Mobile MCP takes a screenshot, run:
./scripts/upload_latest_mcp_screenshot.sh

选项3:与Cursor AI设置集成

如果Cursor AI支持截图后挂钩或命令:

  1. 打开光标设置
  2. 查找“移动MCP”或“截图”设置
  3. 将截图后命令设置为:
    node /path/to/NativeCamp-Android/scripts/upload_screenshot_to_drive.js "$SCREENSHOT_PATH" --folder-name "MCP Screenshots"
    

(这取决于Cursor的具体配置选项)


自动上传提示

💡 按日期组织:

# Upload to a folder named with today's date
MCP_DRIVE_FOLDER="MCP Screenshots - $(date +%Y-%m-%d)" node scripts/auto_upload_screenshots.js

💡 按会议组织:

# Upload to a folder with timestamp
MCP_DRIVE_FOLDER="MCP Session - $(date +%Y%m%d_%H%M%S)" node scripts/auto_upload_screenshots.js

💡 按文件名筛选: 如果Mobile MCP创建具有特定模式的文件(如 mcp_screenshot_*.png),watcher脚本将自动检测并上传它们。

💡 多个观察者: 您可以为不同的文件夹运行多个监视器:

# Terminal 1: Watch /tmp
node scripts/auto_upload_screenshots.js

# Terminal 2: Watch Desktop with different folder
MCP_SCREENSHOT_FOLDER=~/Desktop MCP_DRIVE_FOLDER="Desktop Screenshots" node scripts/auto_upload_screenshots.js

停止自动上传

  • 如果在前台运行:新闻 Ctrl+C 在终端
  • 如果在后台运行:找到进程并杀死它:
    # Find the process
    ps aux | grep auto_upload_screenshots
    
    # Kill it (replace PID with the number you see)
    kill <PID>
    

⚠️ 故障排除

问题:“找不到凭据文件”

这意味着什么:该工具找不到您的凭据文件。

如何修复:

  1. 检查主文件夹中是否存在该文件(脚本检查两个文件名):
    • Mac/Linux:开放式终端和类型:
      ls -la ~/google_drive_credentials.json
      ls -la ~/.google_drive_credentials.json
      
    • 视窗:检查文件是否存在:
      • C:\Users\YourName\google_drive_credentials.json
      • C:\Users\YourName\.google_drive_credentials.json
  2. 文件名可以是:
    • google_drive_credentials.json (可见,推荐-更容易在Finder中创建)
    • .google_drive_credentials.json (隐藏,需要Mac上的终端)
  3. 如果文件不存在,请返回 步骤4 并再次下载
  4. mac用户:如果你想创建 .google_drive_credentials.json 在Finder中(带点),它不起作用。使用 google_drive_credentials.json (没有点)相反,它的工作原理是一样的!

问题:“端口8080已在使用中”

这意味着什么:另一个程序正在使用工具所需的端口。

如何修复:

  1. Mac/Linux:关闭所有可能使用端口8080的应用程序(如web服务器)
  2. 或者询问您的IT团队 帮助您识别使用端口的内容
  3. 再试一次-有时另一个程序刚刚启动

问题:“缺少必需的模块”或“找不到模块'googleapis'”

这意味着什么:未安装所需的软件包。

如何修复:

  1. 打开终端/命令提示符
  2. 导航到项目文件夹:
    cd /path/to/NativeCamp-Android
    
  3. 安装软件包:
    npm install googleapis open
    
  4. 请尝试重新上传

问题:浏览器不会自动打开

这意味着什么:您的系统可能不支持自动打开浏览器。

如何修复:

  1. 该工具将在终端/命令提示符中显示一个URL
  2. 复制该URL (它看起来像: https://accounts.google.com/...)
  3. 将其粘贴到浏览器中 然后按Enter键
  4. 继续登录过程

问题:“身份验证失败”或“授权无效”

这意味着什么:您保存的登录已过期或被吊销。

如何修复:

  1. 删除已保存的令牌 (这会迫使您重新登录):
    • Mac/Linux:运行 rm ~/.google_drive_token.json 在终端
    • 视窗:删除文件 C:\Users\YourName\.google_drive_token.json
  2. 再次运行上传命令
  3. 浏览器打开时再次登录

问题:“找不到文件”

这意味着什么:您提供的文件路径不存在。

如何修复:

  1. 检查文件路径是否正确:
    • 确保没有拼写错误
    • 在Mac/Linux上,路径区分大小写
  2. 尝试使用完整路径 (绝对路径):
    • Mac/Linux: /Users/yourname/Desktop/screenshot.png
    • 视窗: C:\Users\YourName\Desktop\screenshot.png
  3. 或者拖放文件 进入终端以获取正确的路径(适用于Mac/Linux)

问题:“上传失败:权限不足”

这意味着什么:该工具无权上传到Google云端硬盘。

如何修复:

  1. 删除您的令牌文件 并重新进行身份验证(见上文“身份验证失败”)
  2. 当登录时, 确保单击“允许” 对于所有权限
  3. 如果仍然无效,请检查Google Drive API是否已在Google云控制台中启用

问题:“重定向URI无效”

这意味着什么:Google Cloud Console中的重定向URI与工具预期的不匹配。

如何修复:

  1. 转到谷歌云控制台→ API和服务→ 凭证
  2. 点击您的OAuth客户端
  3. 确保 http://localhost:8080 位于“授权重定向URI”列表中
  4. 点击“保存”
  5. 删除您的令牌文件,然后重试

问题:上传速度非常慢或超时

这意味着什么:网络连接问题或Google Drive出现问题。

如何修复:

  1. 检查您的互联网连接
  2. 请稍候几分钟,然后重试
  3. 检查Google云端硬盘是否正常工作:转到 drive.google.com 在浏览器中

问题:自动上传监视器无法检测到屏幕截图

这意味着什么:观察者脚本看不到新文件,或者Mobile MCP保存到其他文件夹。

如何修复:

  1. 检查正在监视的文件夹:

    • 脚本显示启动时正在查看哪个文件夹
    • 确保Mobile MCP将屏幕截图保存到该文件夹
  2. 验证屏幕截图位置:

    • 使用Mobile MCP截取屏幕截图
    • 注意Cursor输出中显示的文件路径
    • 确保这与关注的文件夹匹配
  3. 设置正确的文件夹:

    # If Mobile MCP saves to a different folder, use:
    MCP_SCREENSHOT_FOLDER=/actual/path/to/screenshots node scripts/auto_upload_screenshots.js
    
  4. 检查文件权限:

    • 确保脚本可以从关注的文件夹中读取文件
    • 尝试: ls -la /tmp/screenshot*.png (或您的截图文件夹)
  5. 检查文件扩展名:

    • 观察者只寻找: .png, .jpg, .jpeg, .gif, .webp
    • 如果Mobile MCP使用不同的扩展名,您可能需要修改脚本

问题:自动上传多次上传同一文件

这意味着什么:重复检测工作不正常。

如何修复:

  1. 重新启动监视器 -它按文件名跟踪文件,因此如果文件同名,它可能会上传两次
  2. 检查控制台输出 -每个文件只应显示一次“上传成功”
  3. 如果这种情况持续发生,您可以修改脚本以按完整路径而不是仅按文件名跟踪文件

🔒 安全与隐私

工具能做什么

✅ 将新文件上传到Google Drive
✅ 在Google云端硬盘中创建文件夹
✅ 访问此工具创建的文件
✅ 共享这些文件(您可以在Google云端硬盘中控制共享)

工具不能做什么

❌ 查看Google Drive中的所有文件
❌ 删除未使用此工具上传的文件
❌ 修改现有文件
❌ 访问其他应用程序创建的文件

底线:此工具只能管理它自己创建的文件。它无法查看或更改您的其他Google Drive文件。

确保您的文件安全

  • 不要共享您的凭据文件 (google_drive_credentials.json 或 .google_drive_credentials.json)与任何人
  • 不要共享您的令牌文件 (.google_drive_token.json)与任何人
  • 将这些文件保存在您的主文件夹中 -不要将它们放在共享文件夹中或上传到任何地方

📞 获取帮助

如果有些东西不起作用

  1. 读取错误消息 小心——它通常告诉你出了什么问题
  2. 检查故障排除部分 上方
  3. 验证您的设置:
    • []凭据文件放在正确的位置
    • []Google Drive API已启用
    • []重定向URI设置正确
    • []已安装软件包(npm install 已成功完成)
  4. 询问您的团队 -其他人可能也有同样的问题

常见问题

Q: 我可以在我的工作Google帐户中使用它吗?
A: 是的,只要您有权在Google Cloud Console中创建项目。

Q: 这会自动上传我的所有截图吗?
A: 不,每次要上传屏幕截图时,都需要运行该命令。

Q: 上传的文件去哪里了?
A: 它们会转到Google Drive中的一个文件夹(默认:“MCP截图”或您指定的任何文件夹名称)。

Q: 我可以删除上传的文件吗?
A: 是的,通过浏览器中的Google Drive-该工具只能上传,不能删除。

Q: 我每次都需要登录吗?
A: 不,只是第一次。之后,该工具将使用您保存的登录名。


✅ 设置检查表

使用此检查表确保所有设置正确:

初始设置

  • []已安装Node.js(node --version 显示版本号)
  • []谷歌云项目已创建
  • []Google Drive API已启用
  • []已配置OAuth同意屏幕
  • []创建OAuth客户端ID(桌面应用程序类型)
  • []已下载凭据文件
  • []凭据文件已重命名为 google_drive_credentials.json (或 .google_drive_credentials.json 隐藏)
  • []凭据文件位于主文件夹中(~ 在Mac/Linux上, C:\Users\YourName\ 在Windows上)
  • []重定向URI http://localhost:8080 被添加
  • []已安装软件包(npm install googleapis open 已完成)

首先使用

  • []成功运行上传命令
  • []浏览器已打开进行身份验证
  • []已使用Google帐户登录
  • []点击“允许”获取权限
  • []看到“身份验证成功”消息
  • []屏幕截图已成功上传
  • []可以在谷歌云端硬盘中看到该文件

🎉 你都准备好了!

完成设置后,只需一个命令即可上传屏幕截图:

node scripts/upload_screenshot_to_drive.js /path/to/screenshot.png

测试愉快! 🚀