ものづくり:現状まとめ wix_paste_sections.py
- Dancing Shigeko

- 1 日前
- 読了時間: 4分
こんにちは、Dancing Shigekoです!
普段一番使っているプログラム。このプログラムのおかげでだいぶ作業が楽になった。
今回はファイル名 wix_paste_sections.py。
以下、Codexのまとめ。
---
wix_paste_sections.py は、クリップボードに入っている下書き本文を解析して、Wixブログのテンプレ下書きを複製し、タイトル・本文・前回リンク・カテゴリなどを自動入力する Selenium スクリプトです。
中心の流れは wix_paste_sections.py:2072 以降にまとまっています。
実現できていること
クリップボード本文から ジャンル、作品名(『...』)、話数(第◯話)、アイキャッチ文、[内容] と [感想] を解析して投稿タイトルを自動生成します。シリーズ紹介型のようにタイトルに 第◯話 がないケースも扱える。実装は wix_paste_sections.py:235 。
Wix の投稿一覧からジャンル別テンプレ下書きを検索して複製し、編集画面を開く。実装は wix_paste_sections.py:1444 。
編集画面でタイトルを自動入力し、序文・[内容]・[感想] を所定位置に貼り付け。空行や先頭インデントもある程度補正。呼び出しは wix_paste_sections.py:2129 以降。
太字処理が可能。通常回は [内容] 直下1行を太字、[感想] 内の ・ で始まる行を太字にする。シリーズ紹介型では [内容] 1行目太字はスキップし、[基本情報] と [登場人物] を太字+黄緑にしようとする。関連処理は wix_paste_sections.py:576、wix_paste_sections.py:1120。
前回感想リンクを自動取得して、テンプレ内の こちら にリンクを貼る。公開済み一覧を検索し、先頭行から URL を拾うか、記事をシェア → リンクをコピー で取得する。実装は wix_paste_sections.py:1664 と wix_paste_sections.py:2000。
第1話 のときは前回リンクをスキップ。ただしカテゴリ登録は継続。判定は wix_paste_sections.py:2003。
シリーズ紹介型では、前回リンクの代わりに [各話感想] の各 第N話 行へ過去記事リンクを付ける処理がある。実装は wix_paste_sections.py:1370 と wix_paste_sections.py:2161 以降。
記事設定の カテゴリー をジャンルに応じて自動選択可能。国内ドラマ/海外ドラマ → ドラマ、アニメ → アニメ、映画 → 映画。実装は wix_paste_sections.py:867。
その後、基本設定 の 関連記事 から アニメまとめ / ドラマまとめ を選ぶ処理が入っている。カテゴリ後に5秒待ってから動く。実装は wix_paste_sections.py:1084。
実行オプションとして --headless、--no-manual-pause、--keep-open、--skip-bold、--skip-prev-link、--published-posts-url、--debug がある。定義は wix_paste_sections.py:2073 以降。
失敗時はスクリーンショットと HTML を保存可能。処理は wix_paste_sections.py:57。
制限事項
入力本文のフォーマット依存が強い。少なくとも 『作品名』、[内容]、[感想]、締め文付近の 感想 | ... が必要。これが崩れると ParseError になる。解析前提は wix_paste_sections.py:95 から wix_paste_sections.py:235。
ジャンルは現状 国内ドラマ / 海外ドラマ / アニメ / 映画 の4つ前提。書籍などは対象外です。定義は wix_paste_sections.py:24。
Wix の DOM や data-hook、メニュー文言にかなり依存している。Wix 側 UI が変わると 検索input、記事をシェア、リンクをコピー、カテゴリ、関連記事 のどれかが壊れる。
タイトル設定やリンク設定は iframe や遅延描画に対応しているが、完全ではない。特に execCommand('foreColor') は環境依存で、黄緑化が安定しない可能性がある。関連は wix_paste_sections.py:1120。
過去記事検索は「検索結果の最上段」を前提にしており、同名・類似記事が多い場合に誤取得の余地がある。検索ロジックは wix_paste_sections.py:1664。
関連記事の まとめ 選択はまだ不安定。実装はあるが、実際に カテゴリ → 基本設定 遷移や 記事を選択 ボタン検出で UI 差分に弱く、最近そこを調整中。該当は wix_paste_sections.py:1084。
Mac 前提。pbpaste / pbcopy を使うので Windows ではそのまま動きません。関連は wix_paste_sections.py:81 と wix_paste_sections.py:89。
Chrome の既存ログイン状態に依存する。--user-data-dir のプロファイルで Wix にログイン済みでないと使えない。設定は wix_paste_sections.py:2077 以降。
---
つまりPagesの原稿をWixに貼り付け処理をしてくれるプログラムです!
いくつか改善の余地がある。
それでは、また明日!
コメント