Amazon で検索をかけるときに金額指定を行いたいのですが、何故かamazonの金額指定は、「0~1500」、「1500~10000」というざっくりした範囲しかありません。
なぜ、詳細な数字が指定できる便利機能が存在しないんだ!!!!!
ということで作成しましたww
作成したページとリンク
作成した内容(htmlファイル 40行分だけですがw)は以下の github でページを公開してあります。
ページデザインはこんな感じ...というか、デザインにこだわらなかったため、これだけしかないですw
(画面は、修正前のものです。)
各項目を入力し、「検索」を押下すると、そのまま検索結果のページに飛ぶ仕様です。
例えば、商品名「紙」、金額上限「30000」、金額下限「20000」で検索すると、本当にその価格帯の「紙」が結果として出てきますW!
フィッシングが怖い!(フィッシングできる項目が、検索内容だけですがW)という方は、以下のコードで html ファイルを作成し、それをchromeで開いてください。
コード
コードは、htmlとJavaScriptだけで完結しています。
ロジックとしては、amazon の URL にパラメータとして、low-price
とhigh-price
を設定して検索を行えば、今回実装したことと同じことができます。
本来は、URLの書き換えで行える内容なのですが、今回は、その作業を JavaScript で行える様な処理を作成しました。
github でページを公開するためにコードを上げる必要があったので、下記がそのリポジトリとなります。(index.html しかないですがw)
ソースコードは、以下の通りです。
<html lang="ja">
<head>
<title>Amazon検索 金額指定</title>
</head>
<body>
<h1>Amazon検索 金額指定</h1>
<label>商品名</br></label>
<input type="text" id="product_name" value="">
<label style="background-color:red"></br>金額上限</br></label>
<input type="text" id="high_price" value="">
<label style="background-color:skyblue"></br>金額下限</br></label>
<input type="text" id="low_price" value="">
<div></br></div>
<input type="button" id="btn_execute" value="検索" onclick="openAmazon()">
<script>
/** amazonへの画面遷移実行 */
function openAmazon() {
// amazon のURL
let amazonUrl = 'https://www.amazon.co.jp/s?';
// 商品名の設定
amazonUrl += "k=" + document.getElementById("product_name").value;
// 下限金額の設定
let low_price = document.getElementById("low_price").value;
amazonUrl += "&low-price=" + low_price;
// 上限金額の設定
let high_price = document.getElementById("high_price").value;
amazonUrl += "&high-price=" + high_price;
if (Number(low_price) < Number(high_price)) {
// 画面遷移処理
window.location.href = amazonUrl;
} else {
alert("価格設定が、検索可能な状態にありません!");
}
}
</script>
</body>
</html>
終わりに
今回の本筋と話が変わりますが、フィッシング詐欺には注意しましょう!!
(amazonは何処へ...)
補足
・今回のロジックは URL で金額を指定しているため、スマホアプリだと、金額指定ができません!(なんでだよ!)
・上限金額が下限金額を下回っていると、amazon で検索条件が無効化されます。