youtube-to-blog-post について
youtube-to-blog-postは、YouTube動画の情報や内容から記事を作成する、Hexoブログ執筆者向けのスキルです。プレビューと公開の選択肢に加え、本文の構成、SEO項目の処理、文章の人間らしい調整を備えています。
主な機能
- 01YouTube動画の情報と内容を抽出
- 02Hexo形式の記事と英語ファイル名を生成
- 03見出し・コードブロック・リソースを整理
- 04キーワード・説明・カバー画像を処理
- 05カテゴリー・タグ・ブログディレクトリを設定
- 06プレビューとデプロイに対応
活用シーン
- 01YouTubeチュートリアルをブログ記事にする
- 02複数の動画URLから記事を作成する
- 03ブログへの保存前に記事をプレビューする
- 04記事のカテゴリー・タグ・カバーを設定する
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ wlzh/ skills --skill youtube-to-blog-postインストール後、Claude Code で/youtube-to-blog-postを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
CHANGELOG.mdDOCUMENTATION_UPDATE_SUMMARY.mdINSTALL.mdPRE_COMMIT_SUMMARY.mdREADME.mdSEO_OPTIMIZATION.mdSEO_UPGRADE_SUMMARY.mdreferences/SEARCH-PUBLISH.mdscripts/youtube_to_post.pytests/test_description_format.pytest_publish_safety.py詳細
検索公開契約
新規記事、復元、再公開、デプロイの前に、検索公開契約に従ってください。事実の要約は本文からのみ抽出してください。文字数を満たすために文章を膨らませたり、公開ゲートを省略したりしないでください。
生成する記事には、信頼できる video_id のみを書き込んでください。YouTube の再生リストを自動変更したり、タイトルから特集を推測したりしてはいけません。デプロイには、必ずブログの npm run publish を呼び出してください。作者が再生リストを管理した後、正式な通知段階で特集を再度厳密に更新するため、生成段階のリストのスナップショットは最終的な所属を証明するものではありません。
🔴 厳格な実行ルール(最優先)
この Skill のすべての説明、すべての手順、すべてのチェック項目は、必ず本文書に厳密に従って実行し、いかなる逸脱も許されません。
- スクリプトを実際に実行すること:
youtube_to_post.pyスクリプトを実際に実行しなければなりません。AI による推論、シミュレーション、手作業によるスクリプト出力の代替は禁止です。 - 手順を省略・統合しないこと:本文書で定義されたプロセス(動画情報の取得 → メタデータの生成 → コンテンツの抽出 → 人間らしい表現への調整 → 保存・デプロイ)に従い、各手順を順番に実行しなければなりません。手順を省略してはいけません。
- チェック項目を省略しないこと:すべての SEO 最適化手順(YAML の安全なフィルタリング、HTML 属性のクリーニング、キーワード抽出、カバー画像のフォールバック、内部リンク、リソースのセクション分け)を漏れなく実行しなければなりません。
- 設定はファイルから読み込むこと:ブログディレクトリ、カテゴリー、タグなどの設定は、
youtube-blog-config.jsonまたは Hexo_config.ymlから読み込まなければなりません。ハードコードは禁止です。 - 出力を検証すること:デプロイ後、生成された HTML ファイルが空でないことと、ブログ URL にアクセスできることを検証しなければなりません。
YouTube からブログ記事へ - SEO 最適化版
YouTube 動画を Hexo ブログ形式に準拠した SEO 最適化記事 に自動変換します。ワンクリックでの生成とデプロイに対応しています。
✨ 主な機能
🚀 SEO 最適化
- ✅ YAML の安全なフィルタリングを自動実行 - 特殊文字を処理します。デプロイ時には引き続き監査を通過する必要があります
- ✅ YouTube の特殊文字を書き換え - タイトル/説明文中の
>を》に、<を《に自動で書き換えます - ✅ HTML 属性の安全性を確保 - iframe の
titleを 50 文字に制限し、引用符や特殊文字を自動でクリーニングします - ✅ 説明文を最適化 - 本文の事実に基づく文を優先して使用します。長さの上限はプロジェクトの取り決めに従い、文字数合わせはしません
- ✅ スマートなキーワード - 意味のない断片を除外し、本文に関連するキーワードを最大 8 個抽出します
- ✅ カバー画像 - 3 段階のフォールバック:ローカルのカスタムカバー → YouTube maxresdefault → sddefault
- ✅ ロングテールキーワードを網羅 - 同義語や関連語を自動で追加します
- ✅ 内部リンク - 関連記事へのリンクを自動で追加します
- ✅ 構造化されたコンテンツ - H1-H3 の階層を明確にし、SEO に配慮します
- ✅ リソースをセクション分け - プロモーションリンク、VPS、eSIM、再生リストなどを本文から自動で分離します
- ✅ 短い URL のファイル名 - 中国語のタイトルを、重要なキーワードを優先した英語の kebab-case に自動変換します
- ✅ 参考リンクの重複を防止 -
## 参考链接セクションの重複を自動で回避します - ✅ 実際のタイトルを保持 - 「このチュートリアル」のようなプレースホルダー文言は生成しません
- ✅ AI らしさを自動除去 - humanizer を統合し、AI による文章作成の痕跡を自動で取り除きます
📝 コンテンツ生成
- YouTube 動画のタイトル、説明文、コンテンツを自動で取得します
- 実際のコンテンツをスマートに抽出 - 動画の説明文から見どころ、手順、コード例、リソースリンクを抽出します
- コードブロックをそのまま保持 -
body_md内の fenced code block はエスケープも平坦化もせず、コピー用ボタンは Hexo テーマが一括で提供します - Hexo ブログ形式に準拠した記事を生成します
- SEO に適した英語のファイル名(kebab-case)を自動生成します
- 記事の冒頭に YouTube 動画プレーヤーを埋め込みます(ファーストビューに表示)
- AI の痕跡を取り除く機能を内蔵 - 自然言語処理により、AI による文章作成の痕跡を取り除きます
- 人間らしい表現に調整した後も SEO 基準を満たします
📝 AI による人間らしい表現への調整
- ✅ テンプレート的な表現を排除 - 「対象読者」「実践のアドバイス」などの内容の薄いセクションを削除します
- ✅ AI らしい語彙を除去 - 「さらに」「掘り下げる」など、AI がよく使う言葉を除外します
- ✅ 自然な表現 - AI が生成した堅い表現を口語的な表現に変換します
- ✅ SEO を維持 - 人間らしい表現への調整中も、キーワードと構造を維持します
⚙️ 設定可能
- ブログ記事のディレクトリをカスタマイズできます
- 設定ファイル(
youtube-blog-config.json)に対応しています - カテゴリーとタグをカスタマイズできます
- プレビューモード(--dry-run)に対応しています
🚀 クイックスタート
最も簡単な使い方
# 只需要提供 YouTube URL,所有 SEO 优化自动完成
python scripts/youtube_to_post.py "https://www.youtube.com/watch?v=VIDEO_ID"
自動で実行される処理:
- ✅ 動画情報(タイトル、説明文、長さ、サムネイル)を取得
- ✅ SEO に最適化された説明文を生成(≤160 文字)
- ✅ 本文に関連するキーワードを抽出(最大 8 個。数合わせはしません)
- ✅ YouTube のカバー画像を追加
- ✅ 説明文から実際のコンテンツ(見どころ、コード例)を抽出
- ✅ 英語のファイル名(kebab-case)を作成
- ✅ 長い説明文を、読みやすいセクション、手順、コードブロック、リソースセクションに分割
- ✅ AI の痕跡を取り除く機能を内蔵(自然言語処理)
- ✅ SEO を最適化
- ✅
source/_posts/ディレクトリに保存
ワンクリックで生成・デプロイ
# 在博客目录中运行
cd /path/to/myblog
# 生成文章 + 部署上线
python ~/.claude/skills/youtube-to-blog-post/scripts/youtube_to_post.py \
"YouTube_URL" && \
hexo g && hexo d
カスタムオプション
# 指定博客目录
python scripts/youtube_to_post.py "URL" -b /path/to/blog
# 自定义分类和标签
python scripts/youtube_to_post.py "URL" -c "技术" -t "AI工具" "教程"
# 预览模式(不保存文件)
python scripts/youtube_to_post.py "URL" --dry-run
検収の範囲
説明文の長さの上限はプロジェクトの取り決めであり、Google が定める固定の要約文字数制限ではありません。キーワード、カバー画像、フィールドのチェックで検証できるのは技術的な契約のみであり、インデックス登録までの期間、クリック率、ランキング、トラフィック、デプロイの成功は保証できません。実際の効果は、公開後の Search Console の完全なデータ期間を使用して評価してください。
📋 設定ファイル
方法 1: ローカルユーザー設定(推奨)
ユーザーのホームディレクトリに ~/.youtube-blog-config.json を作成します:
cat > ~/.youtube-blog-config.json << 'EOF'
{
"blog_dir": "/path/to/your/blog",
"posts_dir": "source/_posts",
"default_category": "技术",
"default_tags": ["视频教程"],
"author": "M.",
"image_cdn": "https://img.869hr.uk",
"auto_deploy": true,
"deploy_branch": "main"
}
EOF
メリット:
- ✅ 設定ファイルが Skills の git リポジトリにコミットされません
- ✅ 一度設定すれば、以後も有効です
- ✅ 優先度が最も高く、他の設定を上書きします
方法 2: ブログディレクトリの設定
ブログのルートディレクトリに youtube-blog-config.json を作成します:
{
"posts_dir": "source/_posts",
"default_category": "技术",
"default_tags": ["视频教程"],
"author": "M.",
"image_cdn": "https://img.869hr.uk",
"auto_deploy": false
}
設定の優先順位
~/.youtube-blog-config.json(ローカルユーザー設定)--configで指定した設定ファイル- ブログディレクトリ内の
youtube-blog-config.json
📄 記事の形式
Front Matter(SEO 最適化版)
---
title: 视频标题
subtitle: 视频标题
date: 2026-02-02 15:00:00
updated: 2026-02-02 15:00:00
author: M.
description: 本视频详细介绍... (159字符,包含核心关键词)
categories:
- 技术
tags:
- 视频教程
keywords:
- 核心关键词
- 长尾关键词
- 相关词
cover: https://img.youtube.com/vi/VIDEO_ID/maxresdefault.jpg # ✅ 新增
thumbnail: https://img.youtube.com/vi/VIDEO_ID/maxresdefault.jpg # ✅ 新增
toc: true
comments: true
copyright: true
---
動画ソースのマーカー(Hexo による変換)
<div class="video-container"><iframe src="https://www.youtube.com/embed/VIDEO_ID" title="详细描述视频内容" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
この iframe は Markdown のソースファイルに保持され、サイトで /videos/<video_id>/ を生成するために使用されます。Hexo v2.3.1 の最終的な記事 HTML では、iframe がクリック可能な動画カバーへのリンクに置き換えられます。実際のプレーヤーと VideoObject を配置できるのは独立した視聴ページのみであり、視聴ページの H1 と説明文の前に配置します。記事ページでは引き続き BlogPosting と Twitter/X の大きな画像を出力します。
記事の構成(階層を明確に)
## 视频教程
<iframe>...</iframe> # 源标记;渲染后转换为观看页封面入口
## 视频介绍
# 作者、时长(从描述提取真实内容)
## [按内容自动生成的主题章节]
# 例如:为什么普通方案不够顺手、工具是什么、工作原理、安装与配对
## [步骤/配置章节]
# 命令使用代码块,流程使用编号列表,关键差异使用项目列表
## 常见坑 / 注意事项
# 排错、限制、网络问题、使用建议
## [资源分区]
# 短信平台、VPS 主机、eSIM、账号礼品卡、YouTube 播放列表等单独成区
## 参考链接
- YouTube视频原地址
- 相关推荐
構造化の基準
- 200 字を超える動画の説明文を、そのまま
## 视频介绍に詰め込まないでください。複数の二次見出しに分割してください。 - チュートリアルの本文を優先:実際のチュートリアルの内容を先に置き、その後にプロモーション、リソース、コミュニティ、再生リストを配置してください。
- 手順には番号付きリストを使い、並列の選択肢、メリットとデメリット、よくある質問には箇条書きを使ってください。
- コマンドはコードブロックまたはインラインコードで記述してください。例:
npm install -g happy、happy resume。 - プロモーションリンクは独立したセクションに配置し、チュートリアルの段落に混在させないでください。
- 役立つ太字は維持してください。たとえば、手順名、選択肢名、重要な設定名などです。humanizer の処理段階で Markdown の太字を削除しないでください。
📝 ファイル名のルール
SEO に適した命名
- 形式:英小文字とハイフン(kebab-case)
- 長さ:最大 50 文字(URL は短いほど適しています)
- 意味:重要なキーワードを含めます
- 順序:製品/テーマのキーワードを前に、動作を表す語を後に置き、価値の低い年号は通常削除します
- 例:
claude-code-happy-mobile-remote-control-tutorial.mdcloudflare-temp-email-tutorial.mdvps-free-server-tutorial.mdai-agent-beginner-guide.mdfree-domain-apply-guide.md
自動変換ルール
| 中国語 | 英語 | 例 |
|---|---|---|
| チュートリアル | tutorial | vps-tutorial.md |
| 無料 | free | free-domain.md |
| サーバー | server | cloud-server.md |
| VPN | vpn | free-vpn.md |
| 人工知能 | ai | ai-tools.md |
| スマートフォンのリモート操作 | mobile-remote-control | claude-code-mobile-remote-control.md |
| インストールと設定 | install-config | happy-install-config.md |
| 一時メール | temp-email | cloudflare-temp-email.md |
ファイル名の悪い例
2026claude-code-happyinstallconfigtutorial.md:中国語と英語がつながっていて、読みやすさに欠けます2026-latest-mobile-remote-control-claude-code-happy-install-config-full-tutorial.md:長すぎて、年号や汎用的な語が多すぎますyoutube-JV_WmhYU-RY.md:意味のあるキーワードがなく、最終手段としてのみ使用できます
🎯 使用例の全体像
例 1:基本的な使い方
python scripts/youtube_to_post.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
# 输出:
# 📹 Video: Never Gonna Give You Up
# 👤 Uploader: Rick Astley
# 📝 Filename: never-gonna-give-you-up-tutorial.md
# ✅ Blog post created: source/_posts/never-gonna-give-you-up-tutorial.md
例 2:カテゴリとタグを指定する
python scripts/youtube_to_post.py \
"https://www.youtube.com/watch?v=xxxxx" \
-c "技术" \
-t "VPS" "免费服务器" "教程"
例 3:一括処理
# 创建 shell 脚本批量处理
for url in $(cat youtube_urls.txt); do
python scripts/youtube_to_post.py "$url"
done
# 逐篇严格审计后,仅提交本次文章与封面;再运行统一发布入口
# npm run audit:seo -- --strict --file=source/_posts/<slug>.md
npm run publish
🔧 コマンドライン引数
| 引数 | 説明 | 例 |
|---|---|---|
url | YouTube 動画の URL(必須) | "https://youtu.be/xxxx" |
-b, --blog-dir | ブログのルートディレクトリ | -b /path/to/blog |
-c, --category | 記事のカテゴリ | -c 技術 |
-t, --tags | 記事のタグ | -t AI チュートリアル |
--config | 設定ファイルのパス | --config config.json |
--posts-dir | 記事ディレクトリ(設定を上書き) | --posts-dir source/_posts |
--dry-run | プレビュー モード。保存しません | --dry-run |
--no-humanizer | AI らしい文章の除去をスキップ | --no-humanizer |
--deploy | git に自動デプロイ | --deploy |
--thumbnail | ローカルのカバー画像のパス(blog source/images/ に自動コピー) | --thumbnail /path/to/cover.jpg |
--prefill-title | 動画タイトルを事前入力(YouTube からの取得をスキップ) | --prefill-title "動画タイトル" |
--prefill-description | 動画の説明を事前入力 | --prefill-description "説明内容" |
--prefill-video-id | 動画 ID を事前入力 | --prefill-video-id abc123 |
--prefill-duration | 再生時間を事前入力(秒) | --prefill-duration 600 |
--prefill-uploader | チャンネル名を事前入力 | --prefill-uploader "チャンネル名" |
注意:
- AI らしい文章の自動除去(humanizer)はデフォルトで有効です。
--no-humanizerを使用すると、この手順をスキップできます - 設定ファイルで
auto_deploy: trueを設定すると、自動デプロイを有効にできます
カバー画像の3段階フォールバック
記事の生成時、cover/thumbnail は次の優先順位で選択されます。
- ローカルのカスタムカバー画像 —
--thumbnail /path/to/cover.jpgを渡すと、source/images/に自動コピーされます。最も安定していて確実です - YouTube maxresdefault.jpg —
--thumbnailが渡されていない場合、HEAD リクエストで maxresdefault にアクセスできるか(200)を確認します - YouTube sddefault.jpg — maxresdefault が 404 を返した場合のフォールバックです
# 推荐:带本地封面图(Twitter 缩略图一定可用)
python scripts/youtube_to_post.py "URL" -b /path/to/blog --thumbnail /path/to/cover.jpg
# 不带封面图:自动回退到 YouTube 缩略图
python scripts/youtube_to_post.py "URL" -b /path/to/blog
記事の品質基準(デフォルトで組み込み済み)
コンテンツ品質のゲート:
- ✅ 「このチュートリアル」のようなプレースホルダー文を生成しません
- ✅
## 参考リンクを重複して生成しません - ✅ 実際の動画タイトルを完全な形で保持します
キーワードの品質:
- ✅ 数字のみの語、1文字の語、意味のない断片を除外します
- ✅ タイトルの断片(「リスク管理?カスタマーサポートに問い合わせ」や「100%」など)を除外します
- ✅ キーワードの長さは 2~25 文字です
- ✅ 自動的に重複を削除し、質の高いキーワードを最大 8 個選びます
説明文の品質:
- ✅ 完全な文にし、語の途中で切りません
- ✅ 長文は語の区切りで適切に切り詰めます
- ✅ 最大 160 文字です(本プロジェクトの公開ルールであり、Google が定める固定の要約文字数ではありません)
HTML の安全性:
- ✅ iframe の
titleは 50 文字に制限します - ✅ 引用符や特殊文字を自動的にサニタイズします
- ✅ タイトルと説明文の
</>は自動的に《/》に置き換えます
Front Matter の完全性:
- ✅ デフォルトで
description、keywords、cover、thumbnailを含みます - ✅ すべてのフィールドに YAML 安全化フィルターを適用します
🌐 対応する URL 形式
- ✅
https://www.youtube.com/watch?v=VIDEO_ID - ✅
https://youtu.be/VIDEO_ID - ✅
https://www.youtube.com/embed/VIDEO_ID - ✅
https://www.youtube.com/watch?v=VIDEO_ID&list=LIST_ID
📦 依存関係
- Python: >= 3.7
- yt-dlp: YouTube 情報の取得(自動インストール)
- requests: HTTP リクエスト
依存関係のインストール
pip install yt-dlp requests
⚠️ 注意事項
タグ管理ルール(v3.2 で追加)
記事の生成時は、既存のタグを優先して再利用し、タグ体系の一貫性を保ってください。
基本原則
- 再利用を優先 - 下記の「標準タグ一覧」から最も適したタグを選び、むやみに新しいタグを作成しないでください
- 1記事につき3~5個 - タグの数は3~5個に抑え、付けすぎないでください
- 中国語と英語の併記は禁止 -
海外应用-Foreign-Appsのような形式は使用せず、中国語に統一してください - 大文字・小文字だけが異なる重複は禁止 -
telegramではなくTelegram、ai工具ではなくAI工具に統一してください
標準タグ一覧(67個、カテゴリ別)
AI 関連: AI、AI工具、AI前沿、LLM、DeepSeek、ChatGPT、Claude、Skills
決済関連: 越境決済、クレジットカード、Wise、Stripe、Apple Pay、暗号資産
ネットワーク関連: VPN、VPS、Cloudflare、ネットワークツール、ネットワークセキュリティ、IP 属性
スマートフォン関連: eSIM、Apple ID、App Store、iOS
ツール関連: オンラインツール、効率化ツール、開発ツール、オープンソースプロジェクト、インストール不要、CapCut
チュートリアル関連: チュートリアル、動画チュートリアル
生活・リソース: 無料リソース、学習リソース、知識共有、おすすめポッドキャスト、ネットで稼ぐプロジェクト
アカウント関連: アカウント登録、アカウント管理、メール
その他: 海外アプリ、ソフトウェアのインストール、ソフトウェアの日本語化、ローカルデプロイ、ドメイン、データセキュリティ、ファイル転送、クロスプラットフォームツール、インスタントメッセージング、ソーシャルアプリ、WeChat、Telegram、Google、雑談、技術交流、技術サポート、カスタマーサポート、トラブル対応、Apple、会社設立、CPA 設定、サイト構築、SEO、PairDrop、個人情報、性別設定、地域設定
タグの選択ロジック
输入: 视频主题内容
↓
1. 先查标准标签表,找到最匹配的 3-5 个标签
↓
2. 如果主题确实不在标准标签表中 → 允许创建新标签
但新标签必须符合命名规范:
- 中文为主(如「云存储」而非「Cloud Storage」)
- 不超过 6 个字
- 不含特殊字符(|、-、/)
↓
3. 输出 tags 列表
使用禁止のタグ形式
# ❌ 错误:中英双语
tags:
- 海外应用-Foreign-Apps
- AI工具 | AI Tools
# ❌ 错误:大小写不一致
tags:
- telegram # 应为 Telegram
- ai工具 # 应为 AI工具
- cloudflare # 应为 Cloudflare
# ❌ 错误:过于细分
tags:
- 免费VPS # 应为 VPS
- 虚拟信用卡 # 应为 信用卡
- 深度学习 # 应为 AI
- 零基础教程 # 应为 教程
# ✅ 正确:复用标准标签
tags:
- 视频教程
- VPS
- VPN
- 教程
SEO のベストプラクティス
- ✅ 説明文の長さ - 160 文字以内に自動で最適化します
- ✅ キーワードの数 - 最大 8 個とし、根拠が不十分な場合は少なくします
- ✅ YAML の安全性 - 特殊文字を自動的にフィルタリングします
- ✅ カバー画像 - YouTube のサムネイルを自動で使用します
- ✅ 内部リンク - 関連するおすすめ記事を自動で追加します
- ✅ ファイル名の品質 - 英語の kebab-case、50 文字以内、主要なキーワードを優先します
- ✅ 本文の構成 - 長い説明は章、手順、リソースごとに分ける必要があります
使用上のヒント
- ファイル名の一意性:生成されたファイルがすでに存在する場合は、上書きを避けるためにタイムスタンプを追加します
- 動画の配置:動画は記事の冒頭に埋め込み、最初の画面内に表示されるようにします
- デプロイ前のプレビュー:
--dry-runを使用して、生成内容をプレビューします - SEO の確認:公開前に、ファイル名、description、keywords、カバー画像、ディレクトリ構成がすべて生成されていることを確認します
🔍 SEO 优化细节
关键词提取策略
# 1. 先识别语义主题包(最高优先级)
semantic_keywords = [
"Claude Code",
"Happy",
"手机远程控制",
"Happy安装配置",
"Claude Code远程控制",
"手机控制ClaudeCode",
"E2EE加密",
"远程开发",
]
# 2. 再从标题、用户标签、描述中补充关键词
user_tags = ["AI工具", "技术"]
title_words = ["VPS", "免费", "教程"]
desc_keywords = ["虚拟服务器", "0成本", "建站"]
# 3. 自动添加同义词
synonyms = {
"VPS": ["虚拟服务器", "virtual private server"],
"免费": ["free", "0成本"]
}
# 最终生成最多 8 个正文相关关键词
keywords = ["VPS", "免费服务器", "虚拟服务器", "0成本", "VPS教程"]
描述生成规则
# 优先级:
# 1. 博客正文中与标题相关的真实句子
# 2. 无正文时使用视频描述中的真实句子
# 3. 标题本身作为兜底,不添加未经证实的内容范围
# 示例:
"Happy 安装配置教程:用手机远程控制 Claude Code,覆盖安装配对、会话管理、国内网络问题和自建中继。"
内容结构优化
## 视频教程
# iframe (首屏可见)
## 视频介绍
# 作者、时长、主题介绍
## 为什么/背景/痛点
# 为什么需要这个工具或方案
## 工具是什么 / 工作原理
# 工具定位、核心机制、安全性
## 安装与配置
# 命令用代码块,步骤用编号列表
## 会话管理 / 日常用法 / 常见问题
# 按实际内容拆分,不使用空泛模板
## 资源推荐
# 推广链接、社群、VPS、eSIM、播放列表分区展示
## 参考链接
# 内部链接 + 视频链接
SEO 效果评估
技术检查不预测 Google 收录时间、关键词排名、点击率、自然流量或广告收入。发布后使用完整的 7 天、28 天 Search Console 窗口评估,并区分页面聚合、查询截断、子域名及设备差异。不得把发布前增长作为本次修改的因果证据。
📚 相关文档
🆕 更新日志
v4.3 - 增量部署优化版 (2026-05-12)
- ✅ 增量编译部署 - 默认
hexo g && hexo d,跳过hexo cl,只生成变更文件 - ✅ 全量重建降级 -
hexo cl && hexo g && hexo d仅在改配置/主题时使用 - ✅ IndexNow 增量提交 - 只提交本次新增或修改的文章 URL,而非全部 140 篇
- ✅ IndexNow 容错 - git 不可用时自动回退到全量提交
- ✅ CLAUDE.md 同步更新 - 部署命令说明与实际流程对齐
v4.2 - 合并版 (2026-05-12)
- ✅ 封面图三级回退 - 本地自定义封面 → YouTube maxresdefault → sddefault
- ✅
--thumbnail参数 - 本地封面图自动复制到 blog source/images/ - ✅
--prefill-*参数 - 预填视频元数据,跳过 YouTube 抓取 - ✅ 响应式 iframe - 改用
.video-container包裹,自适应页面宽度 - ✅ YouTube 特殊字符改写 - 标题/描述中的
>→》,<→《 - ✅ HTML 属性安全 - iframe title 限制 50 字符,自动清洗引号
- ✅ 参考链接去重 - 自动避免重复
## 参考链接区块 - ✅ 真实标题保留 - 不再生成"这个教程"占位文案
- ✅ 合并 v3.3 结构化正文 + v4.1 直接注入元数据功能
v4.1 - 直接注入元数据版 (2026-04-12)
- ✅ 正文结构升级 - 长 YouTube 描述不再原样堆叠,自动拆成教程章节、步骤、常见坑和资源分区
- ✅ 文件名生成升级 - 中文标题自动生成核心关键词优先的英文短 URL,例如
claude-code-happy-mobile-remote-control-tutorial.md - ✅ description 升级 - 优先生成包含搜索词的 160 字符内 SEO 摘要,而不是取第一句或命令句
- ✅ keywords 升级 - 支持语义主题包,避免标题碎片和无意义词进入关键词
- ✅ humanizer 修正 - 保留 Markdown 加粗,避免教程可读性被削弱
v3.2 - 标签管理规范版 (2026-04-19)
- ✅ 标准标签表 - 定义 67 个标准标签,覆盖所有博客内容分类
- ✅ 标签复用规则 - 生成文章时必须优先复用已有标签,禁止随意创建新标签
- ✅ 命名规范 - 禁止中英双语标签、大小写不一致、过于细分
- ✅ 数量控制 - 每篇文章 3-5 个标签
- ✅ tag_map 同步 - 标签变更同步更新
_config.yml中的 tag_map
v3.1 - 本地配置 + 自动部署版 (2026-02-13)
- ✅ 本地配置文件 - 支持
~/.youtube-blog-config.json,不提交到 git - ✅ 自动 Git 部署 - 新增
--deploy参数,自动提交推送代码 - ✅ 配置优先级 - 本地配置 > 命令行配置 > 博客目录配置
- ✅ 博客路径自动识别 - 一次配置,永久生效
- ✅ 自动部署选项 - 配置文件支持
auto_deploy和deploy_branch
v3.0 - 自然语言 + SEO 版 (2026-02-07)
- ✅ 智能内容提取 - 从视频描述提取真实内容,告别模板化
- ✅ 去模板化 - 删除"适合人群"、"实践建议"等空泛章节
- ✅ 内置 AI 痕迹去除 - 自然语言处理,去除 AI 写作痕迹
- ✅ SEO 友好人性化 - 确保人性化后仍符合 SEO 标准
- ✅ 关键特性提取 - 自动识别和提取视频核心亮点(✅ 标记)
- ✅ 代码示例提取 - 自动识别和格式化代码块
- ✅ 删除无关内容 - 过滤社交媒体链接等无关信息
v2.0 - SEO 优化版 (2026-02-02)
- ✅ 新增 YAML 安全过滤;仍需实际部署与验证
- ✅ 新增描述优化(160 字符)
- ✅ 新增智能关键词提取(数量不是效果保证)
- ✅ 新增 YouTube 封面图
- ✅ 新增长尾关键词覆盖
- ✅ 新增内部链接
- ✅ 优化内容结构(H1-H3)
- ✅ 优化文件名生成(SEO 友好)
v1.0 - 基础版 (2026-02-02)
- ✅ 基础视频信息获取
- ✅ 文章生成
- ✅ 视频嵌入
- ✅ 英文文件名
版本: 4.8.2 Single-VideoObject Watch-Page Contract 更新日期: 2026-07-28 状态: ✅ 已测试并上线