macOS12.3でスクリプトが動かなくなったので修正した

 先日、macOS12.3へのアップデートを実施したところ、これまで動いていたいくつかのスクリプトが動かなくなりました。調べてみたところどうやらPython2.x系のランタイム環境が削除された影響だったようです。今後のために対処した方法を置いておきます。

VivliostyleをローカルPC内サーバーで展開するコードの修正

 以前、こちらに書いたものを社内でもずっと使っているのですが、こちらでローカルWebサーバ起動処理にPython2系を使っていたために動かなくなりました。これは単純にPython3を使ってサーバを起動すればよいので、

に書き換えて終了。以下に一応全文を置いておきます。

PDFのページ数の取得

 PDFのページ数を取得して全ページPhotoshopで画像変換する処理をAppleScriptで自動化していましたが、ページ数取得にPython2系を使っていたため動かなくなりました。

 従来のコードはこちらの記事を参照にしたものです。これはPyObjCというものを通じて処理をしているようなので単純なPython3への置き換えではうまくいきそうにありません(無理でした)。ただ、この場合PDFのページ数が取れればよいので手段は何もPythonに限らずともよいはずです。ちょっと調べてみたところシェルでPDFのページ数を取得するためのかなりの手段が見つかりました
 このうち、とりあえず追加インストールが必要なさそうな「mdls」を使用する形で書き換えました(市川せうぞー師匠アドバイスありがとうございます)。Spotlight検索用のメタデータを使用するため信頼性は低いとのことなのですが、ユースケース的には支給されたPDFを画像変換し、変換後の画像は目視で確認しますのでまあうちの場合はこれで大丈夫でしょう。コード的には以下のような形です。

 何か問題が出るようであればexiftoolあたりを使う形に置き換えてもよいかなと思っています。

(2022.6.14)

タグ: , , , ,

コメントをどうぞ

プロフィール
Jun Tajima

こちらにて、電子書籍&Web制作を担当しています。
このブログは、EPUB3をはじめとした電子書籍制作担当オペレータからの、「電子書籍の制作時にたとえばこんな問題が出てきていますよ」的な「現地レポート」です。少しでも早い段階で快適な電子書籍閲覧・制作環境が整うことを願って、現場からの声を発信していこうと目論んでおります。

当ブログ内の記事・資料は、私の所属しております組織の許諾を得て掲載していますが、内容は私個人の見解に基づくものであり、所属する組織の見解を代表するものではありません。また、本ブログの情報・ツールを利用したことにより、直接的あるいは間接的に損害や債務が発生した場合でも、私および私の所属する組織は一切の責任を負いかねます。