画像形式を変換するコマンド

最近本当に忘れっぽくて困ります。

さて、本日のお題は、表題のとおりなんですが、STORES.jp に出品している商品をベースとして、ヤフー店にも、商品を転送?しているわけですが、スクリプトがエラーになりました。

まあ、商品の登録時に気をつけておけばいいことではあるんですが、この調子だといつまでも覚えてないと思うので、また同じ轍を踏むのは確実です。

というわけで、スクリプト自体を書き換えました。

エラーの原因は、いくつかあって、STORES の方は、JPEG 以外にも、PNG などの形式が OK なんですが、ヤフー店は、JPEG か GIF ということになっているためです。

それ以前に、スクリプト自体が JPEG である前提でした。

set myNumImages to do JavaScript "document.querySelectorAll('li>img[src*=hearthandhome]').length"
if myNumImages > 3 then set myNumImages to 3

set myPath to do shell script "echo ~/Pictures/STORES/" & myItemId
try
    do shell script "mkdir " & myPath
end try
do shell script "open " & myPath

repeat with myImageIndex from myNumImages to 1 by -1
    set myImageFileName to do JavaScript "document.querySelectorAll('li>img[ng-src*=hearthandhome]')[" & myImageIndex - 1 & "].src.replace(/^.+[/]|_100x100/g,'')"
    
    set myImagePath to myPath & "/" & myImageIndex & ".jepg"
    set myImageURL to "https://f.stores.jp/_files/hearthandhome/" & myImageFileName
    
    do shell script "/sw/bin/wget --no-check-certificate " & myImageURL & " -O " & myImagePath
    
    if myImageFileName ends with ".jpeg" is false then
        do shell script "sips -s format jpeg " & myImagePath
    end if
end repeat

やっつけなので汚いですが、とりあえず動きました。

今度の改築で、自動的に png があると jpeg に変換されるので、その画像にすげ替えれば、次からは問題ないかと。

えらく振りが長くてすみません。

肝心のコマンドですが、sips です。

sips コマンドは、記憶が確かなら海上忍氏の 連載記事 で知ったと思うんですけど、あれ、344 回も続いたんですね。

当該記事は、こちら です。

2003/12/05 の記事でしたので、かれこれ 12 年ほど前ですか。
まあ、よく覚えていたというべきか、それともやっぱり耄碌したと考えるべきか。

というか、OS X になってからもうそんなに経つんですかね。
そういえば、Preview Release は嫁さんと新宿新南口の高島屋に買いに行ったような記憶があります。
Cheater のリリースは 2001 年だったのようですから、子供が生まれる前ですね。
いやはや、長生きしたものです。

にほんブログ村 ライフスタイルブログ 薪ストーブ暮らしへ
にほんブログ村 ライフスタイルブログ 薪ストーブ暮らしに参加しています。 励みになりますので、足あとがわりに、ランクアップにご協力下さい。

Leave a Reply