ches3

RequestlyでAmazonの商品ページのURLをシンプルにする

Requestlyというブラウザ拡張機能を使って、Amazonの商品ページ・レビューページのURLから不要な部分を除去する方法を紹介します。

Before:
https://www.amazon.co.jp/Echo-Spot-2024年発売-スマートアラームクロック-with-Alexa-鮮やかなサウンド-グレーシャーホワイト/dp/B0C2RZWV9B/ref=lp_5364343051_1_1?sbo=RZvfv%2F%2FHxDF%2BO5021pAnSA%3D%3D

After:
https://www.amazon.co.jp/dp/B0C2RZWV9B

Requestlyとは

URLのリダイレクトやHTTPヘッダーの書き換えができるブラウザ拡張機能です。

Requestly - A Simple & Powerful HTTP Interceptor for browsers

requestly.com

手順

  1. Requestlyをインストール

Downloads - Requestly

requestly.com

  1. 下のリンクを開いてルールをインポート

https://app.requestly.io/rules#sharedList/1719630686779-Amazon-Simplify-Product-Page-URL

app.requestly.io

  1. ルールを有効にする

拡張機能の設定

拡張機能の設定から、サイトへのアクセスを「特定のサイト」に設定して、以下のドメインを追加してください。

  • app.requestly.io
  • www.amazon.co.jp
  • www.amazon.co.uk
  • www.amazon.com

「すべてのサイト」だと、一部のサイトで不具合が生じます。

ルールの解説

Amazonの商品ページのURLは以下のような形式になっています。

https://www.amazon.co.jp/商品名/dp/ASINコード/ref=XXXXXXX?key=value&key=value&key=value……

このうち商品名とref以降の部分は不要で、以下のURLでも商品ページにアクセスできます。

https://www.amazon.co.jp/dp/ASINコード

このルールでは、正規表現で必要な部分のみのURLに置換してリダイレクトさせています。

正規表現に関しては面倒なのでChatGPTに解説してもらいました。これより先はChatGPTの出力結果です。

正規表現パターン

/(https?:\/\/www\.amazon\.(?:co\.jp|com|co\.uk))(?:\/.*)?\/(dp|gp\/product|product-reviews)\/([a-z0-9]{10}).*/ig

この正規表現パターンは、AmazonのURLからドメイン、ページタイプ(dp、gp/product、product-reviews)、およびユニークな商品識別子(ASIN)をキャプチャするように設計されています。

以下に各部分の説明をします。

  1. (https?:\/\/www\.amazon\.(?:co\.jp|com|co\.uk)):
    • https?:\/\/: http://またはhttps://プロトコルに一致します。
    • www\.amazon\.: www.amazon.に一致します。
    • (?:co\.jp|com|co\.uk): co.jpcomco.ukのいずれかに一致します。
  2. (?:\/.*)?:
    • オプションで、スラッシュとその後の任意の文字列に一致します。
  3. \/(dp|gp\/product|product-reviews)\/:
    • スラッシュに続くdpgp/product、またはproduct-reviewsに一致します。
  4. ([a-z0-9]{10}):
    • 10文字の英数字(ASIN)に一致します。
  5. .*:
    • 任意の文字列に一致します。

置換パターン

$1/$2/$3
  • $1: 正規表現の最初のキャプチャグループで一致した部分(ドメイン)。
  • $2: 正規表現の2番目のキャプチャグループで一致した部分(ページタイプ)。
  • $3: 正規表現の3番目のキャプチャグループで一致した部分(ASIN)。
この記事を共有する