noteのPlaywright自動公開で見出しが壊れる問題を解決した話をnoteで公開しました
本記事にはアフィリエイトリンクが含まれています。記事の内容は独自の調査・評価に基づいています。
POINTこの記事でわかること
- 1note.comへのPlaywright自動投稿でmarkdown見出しが変換されず壊れる問題の原因と解決策をnoteに公開
- 2原因はProseMirrorのinput rulesがプログラム挿入では発火しないこと
- 3解決策はmicromarkでHTML変換してClipboardItemのtext/htmlペーストで投入する方式
- 4note #31「Claude Codeブロガーpepe」より¥500で公開中
マネログ運営の筆者が、note.comへの記事投稿を自動化するフローで見つけた「文字は全部入るのに見出し・コードブロック・太字が全滅する」問題の原因調査と解決までを書いたnoteを公開しました。
25,000字の原稿を自動投入したところ、96行の見出しがすべてリテラルの「##」付きテキストのまま残っていた——しかも過去の投稿でも同じ破綻が起きていた可能性があるのに、検品を仕込んでいなかったので気づけなかった、という話です。
このnoteでは、旧方式が壊れていた技術的な理由から、markdownペースト方式の中途半端な挙動の実測、最終的にたどり着いたHTMLペースト方式の完全な実装までを、実行結果の数字付きでまとめています。
第31弾 note の内容ハイライト#
第31弾「noteをPlaywrightで自動公開すると見出しが壊れる」では以下を扱っています。
- 旧フローの正体:
execCommand('insertText')ではProseMirrorのinput rulesが発火しない理由 - 第2の挫折: markdownクリップボードペーストは変換が部分的で自動化の土台にできない実測結果
- 最終解: micromarkでmarkdown→HTML変換 +
ClipboardItemのtext/htmlペーストの完全実装 - 機械検品: 投入前に期待値を算出し、投入後のDOMと突合して事故を止める方法
- 実運用の罠3つ: 本文由来のハッシュタグ誤登録・CommonMarkフランキング規則・コードブロック保護
本文の詳細は note 本体でご確認ください。
想定読者#
| ✅ 向いている方 | ❌ 向いていない方 |
|---|---|
| Playwright等でnote・リッチテキストエディタの自動化をしている方 | 自動化・スクレイピングに関心がない方 |
| ProseMirror/Slate/Lexical系エディタへのプログラム入力で悩んでいる方 | コード例より概念だけ知りたい方 |
| 「動いているように見えて壊れている」自動化の検品方法を知りたい方 | note運用を手動で行う予定の方 |
ご購入は note 本体で#
「noteをPlaywrightで自動公開すると見出しが壊れる — 25,000字の合本を1発ペーストで公開できるようになるまでの全記録」を note で見る →価格: ¥500(税込)/ Claude Codeブロガーpepe(bloger_pepe)
あわせて読みたい#
- 副業完全ガイド|サラリーマンが月10万円を稼ぐためのロードマップ
- X運用note7本を1冊に統合した【合本】X運用完全版をnoteで公開しました
- Xリプライ「返信済み」判定が誤検知だった話をnoteで公開しました
note自動公開の見出し崩れに関するよくある質問#
FAQよくある質問
QなぜinsertTextで挿入するとmarkdownが変換されないのですか?
noteのエディタ(ProseMirror)のmarkdown風変換はinput rulesという仕組みで、人間のタイピングで末尾の1文字が入力された瞬間に発火します。execCommand('insertText')で文字列を一括挿入すると発火機会がないため、テキストは入っても見出しやリストの構造は付きません。
Qmarkdownをそのままペーストする方式ではダメなのですか?
実測では変換されたところとされなかったところが混在しました。25,000字・約70見出しの原稿で59行が未変換のまま残り、チャンクの切れ目やコードブロックをまたぐ位置で挙動が変わるため、自動化の土台にできないと判断しました。
QHTMLペースト方式とはどういう仕組みですか?
手元でmicromarkを使ってmarkdownをHTMLに変換し、ClipboardItemでtext/htmlとしてクリップボードに書き込んでからCmd+Vでペーストします。ProseMirrorはtext/htmlをスキーマに従って確実にパースするため、見出し・リスト・コードブロック・リンクが全項目期待値どおりに再現されます。
Q投入結果の検品はどうやって自動化するのですか?
変換後のHTML文字列からh2・h3・pre・liの個数を期待値として算出し、投入後にエディタのDOMを数えて突合します。1つでもズレたら公開を止めることで「文字は入ったが構造が死んでいる」タイプの事故を防げます。
Qnote以外のエディタにも応用できますか?
できます。プログラム挿入とタイピングは別物である点、解釈をアプリ側に任せず手元でHTMLに確定させる点、投入後に数えて突合する点の3原則は、ProseMirror・Slate・Lexical系のリッチテキストエディタ全般に共通します。
参考資料#
更新履歴 (1件)
- 2026.07.11公開(note第31弾の告知)