こんにちは、さち です。
以前、Firefox でサイト内検索を便利に使用する方法として
スマートキーワードを使ったURLバー(ロケーションバー)からの
検索方法を紹介しましたが
実はこの方法、Amazon では使えないのです。
そこで今回は
Amazon でもスマートキーワードを使えるようにする方法について
書いていきたいと思います。
検索ワードが文字化けしてしまう
通常の方法で Amazon にスマートキーワードを設定します。
しかし、いざスマートキーワードを使い
Amazon の商品検索をしてみると
下の画像のように文字化けが起こってしまいます。
せっかくスマートキーワードを設定しても
これでは使い物になりません。
解決方法
文字化けが起こる理由は後で書くことにして
先に解決方法を見ていきます。
解決するには、スマートキーワードに登録するURLを
下記のものに変更すればOKです。
変更の手順は以下のとおり。
- Amazonのスマートキーワードを編集します。
スマートキーワードのブックマーク上で「右クリック」→「プロパティ」
と進みます。
- URL欄に元から入っているURLを完全に消去します。
先ほど上で紹介した修正済みのURLをコピペし、「保存」をクリック。
これで、スマートキーワードを使用して
Amazon内の検索が正常にできるようになりました。
文字化けが起こった理由
この項は少し専門的な内容になります。
文字化けの理由を知らなくても前項の方法で直せますので
興味があるという方のみ読み進めて下さい。
通常の方法でAmazonをスマートキーワードに登録した場合
下のようなURLが登録されるようです。
文字化けは送信側と受信側の文字コードの不一致により起こります。
URLを見渡してみた感じでは文字コードに関係しそうなのは赤字の部分。
ここをちょっと調べてみます。
AmazonのHTMLソースをのぞいてみると
この部分は隠し要素によって入力されているようで
「カタカナ」という値を送信している模様。
つまり、「%u30AB%u30BF%u30AB%u30CA」は
「カタカナ」がURLエンコードされたものということですね。
どの文字コードでエンコードされているのかを調べてみたところ
「Unicode」であることが分かりました。
ということで、「カタカナ」という文字列を
Unicode以外の文字コードでエンコードして置き換えてみます。
Amazonのサイトは「Shift_JIS」という文字コードで作られているので
まずは Shift_JIS にエンコードしてみました。
しかし、文字化けは直らず。
気を取り直して、次は「UTF-8」でエンコード。
すると、文字化けが直りました。
これで完成としても問題ないのですが
何となくURLが長い気がしたので削ってみます。
このURLでスマートキーワードを問題なく使用できたので完成。
URLエンコード/デコードには下記サイトを使用させて頂きました。
ありがとうございました。
コメント