ふぁメモ

主に技術系のメモをしたいけどやっぱり適当日記。たまにPHPコード載ってるけどメモ書き程度のスクリプトなのでそのまま使っちゃダメ。

Amazonに投稿したレビューをバックアップしようの巻

Amazonレビューが消されてた話

ブログを使ってガジェットレビューとかやっていこうかなとか思った時期もあるのだけど、だいたいAmazonレビューに投稿してしまうのでほぼ転載するだけになるし別にいいだろうと思っていたのだけど、最近ふと消えているレビューがあることに気付いた。

f:id:fashi:20210504163037p:plain
キャッシュの日付からすると最近

f:id:fashi:20210504163108p:plain
消されていたレビュー内容

Googleのキャッシュにはまだ残っていたので消されたのは最近のようだ。 HDCP云々がまずかったのか他のメーカーを揶揄しているのが悪かったのか原因はわからない。 同じメーカーの新モデルからはHDCPの文字は消えていたりするが、他の同一製品のレビューにある似たようなレビューは消されていない。

あるいは、悪評が多い中の賞賛レビューなのでサクラを疑われたのかもしれない。

f:id:fashi:20210504163241p:plain
似た内容の消えてないレビュー

自分としては気になる機器があるけど18,800円は手が出ないなーと思っていたら見た目が全く同じのが6,480円で売られていたのでダメ元で買ったら普通に使えたぜヒャッホウと思って★5レビューを投稿したのだが、その後まともに動かない・音ズレするという★1レビューが増えたのでサクラに見えるのは致し方ない。こんなことならダメなところを書いて★4にしておけばよかった。

f:id:fashi:20210504165401p:plain
気になるけどやけに高い機器

ちなみにインプレスのAVWatchを読んでいたら小寺信良氏も同じ製品を買っていた。

https://av.watch.impress.co.jp/docs/series/zooma/1306593.html

記事内にもある通り実にありふれた製品である。

f:id:fashi:20210504163135p:plain
AVWatch記事

中華製品はかなり品質にバラつきがあるので個体不良は多いだろうし、あるロットやある代理店の販売したものが全て不良品だったり中身の違う偽物なんてこともありうる。★1レビューをしている人はそういった不良品を掴んでしまったのかもしれない。 Monoqlo誌やthe360.lifeで絶賛されていたから買ったのにハズレだった、なんてこともままあるのだ。

競合他社が売れ筋商品を貶めようとして悪意あるレビューを投稿していたなんて事例もあるくらいなので、Amazonのレビューというのは実際はほとんどアテにならないのだ。

消えた自分のレビューももしかしたら競合他社が競合製品の評価を高くしているレビューを狙い打ちして通報している可能性だってあるやもしれない。

自分としては「手元にある製品はまともに動いています。Bandicamで動かしています。二時間くらいキャプチャした限り音ズレは確認出来ません。OBSは使ってないので知らないです。繋ぎっぱなしにしていますがまだ壊れてはいません。」ということしか言えない。これから購入する人が同じ性能の製品を手にできるかすらわからない。

今も残っているレビューで以前から気になっていたもの

そんな低評価のレビューの中で一際気になるレビューがある。

f:id:fashi:20210504163211p:plain
おかしなレビュー

使わずに返品したってw なんでこれでレビューとして成立するんだよ。

よく製品自体には触れずに配送が遅かったからとか梱包が悪いからとか(他の商品の)サポートの態度が悪かったとかで評価を下げようとしているひどいレビューがあるけど、これも相当だ。悪評を投稿するためだけに購入して返品しているじゃないか。

そして気になる一文が。

レビュー☆5にしたら2000円分ギフト券プレゼントと書かれた紙も同梱されておりました

え、そんなの入ってなかったぞ…。

ただまあこれは販売代理店(販売元)が入れるのだろうから、自分が買った時と違う販売元の商品には入っているのかもしれない。

気になるのはこのレビューが普通に長期間掲載されているということだ。

レビューしてくれたら金券あげます的な紙が入っているのはよくあるので自分もレビューに書いたことがあるが、その時はAmazonからこのレビューは掲載できませんと言われてしまった。

f:id:fashi:20210504163305p:plain
掲載拒否されたレビュー

コミュニティを混乱させる誤解を招く行為になるんだそうである。 確かに★5レビューの並んでいる商品のレビューにあいつらはみんな金をもらっているサクラだという書き込みがあれば一気に評判は落ちるだろう。実際にはそんな事実がないとしても悪魔の証明だし確かめようがない。(逆に実際に紙きれの写真を提示したところで捏造を疑われる可能性もある)

以前買った毛布のレビューには「毛が抜ける」という低評価が散見されたし、以前使っていたパソコン用ユーティリティ製品には「ユーザー登録すると迷惑メールがいっぱい来る」みたいなレビューが付けられていた。もちろん自分の購入した毛布に抜け毛は見られないし、登録したメールアドレスに迷惑メールが来ることもなかった。こういうのは昔からある嫌がらせの手法であろう。それはわかる。

じゃあなんでさっきのレビューはずっと掲載されているのだ。

Amazonレビューも担当者ガチャ次第ということなのかもしれない。 通報しようにも昔はあった理由を記入する欄がなくなってしまったので数が集まらない限りチェックしない気がしてならない。

Amazonに投稿したレビューをバックアップする

で、本題。

Amazonにレビューを投稿したらそれで満足していたが、消される可能性があるなら念のため手元に控えを取っておいたほうがいいだろう。 さすがにいちいち書いた文章のコピーを保存しているほどマメではなかった。消されているものは仕方ないが今見られるものだけでも保存しておこうと思い立ったわけだ。

自分が投稿したレビューの一覧はどこにあるのか。

投稿したレビューは、公開プロフィールより編集または削除できます。

公開プロフィールを見てみると、書き込み履歴という欄があって、自分の投稿したレビューが並んでいる。 しかし「全文を表示する」をクリックしないと全文がでてこないし、商品名も途中で切られてるし、販売終了した製品に至っては何の商品のレビューかもわからない。DOMからはASINと個別ページへのURLしか取得できない。

ええい、もっと再利用しやすい一覧はないのかっ

Chromeの開発者ツールでネットワークタブのXHR見てみると、スクロールして読み込みが発生する度に

https://www.amazon.co.jp/profilewidget/timeline/owner?...

というエンドポイントへのアクセスがある。 ここで取得しているJSONの中身を見るとレビューが全文書いてある上に商品名もフルで入っている。販売終了した商品名も入っていたり(入っていないのもある)する。

f:id:fashi:20210504162906p:plain
プロフィールページをスクロールしながら開発者ツールを確認する

「owner?」で抽出できることを確認して過去の分が全部表示されるようにスクロールしながらこれを右クリックしてHARを保存するとかオブジェクトをコピーしてテキストエディタに貼り付けると目的は果たせそうである。

Previewタブの▼contributionsをcopy valueしてテキストエディタに貼り付けて自分でカンマを入れて次のをくっつけていくのが使いやすいだろうか。あるいはその左上の▼{marketplaceId~}をCopy objectしてcontributionsだけ連結するのがわかりやすいかな。あるいは左ペインの行ごとに右クリックしてCopy→Copy responseしてテキストエディタに貼り付けて改行して1行1レスポンスで貼り付けていくのがいいだろうか。一括で保存できないのがちょっともどかしい(Save all as Har with contentsだとフィルタした結果以外も入る)。

あとはこのJSONを…PHPとかで処理すれば…と思ったけどJSONとして保存したところで目的が果たせたので整形はしなくていいや。

おしまい。

きっと本来はAmazonのdeveloper登録したら適切なAPIが利用できるのだろうけど、普通にブラウズしながら開発者ツールを眺めるだけでも結果は得られるというわけである。

いやーChromeの開発者ツール便利だなー(そこか?)

余談

開発者ツールを眺めているとイロイロ解決する話は数多い。

たとえばInstagramなんか、Facebookに買収されてからAPIの利用申請がとても面倒になってしまって、likeした画像を保存するだけみたいな個人的な趣味ではAPIを利用することができなくなってしまったのだが、ログインしない状態で個別URLを開いて開発者ツールを見るとOGPと共有ボタンのところに必要な情報は全て書いてあったりするのだ。(※Mediaタブで拾えるのは縮小版であってオリジナルではない)

あとTogetterでマンガが公開されてるやつ、普通に見るとページをめくるのが面倒なんだけど、画像クリックすると専用ビューアが開いて全ページ分の画像リストがAjaxで読み込まれるのを拾えたりする。

規約で禁止されてたりするスクレイピング行為をしたりスクレイピングするツールを公開するといろいろ問題がありそうだけど、普通にブラウジングしながら裏で取得してる情報を保存しておくだけなら何も問題はないよね…?

それに内部APIなんて突然仕様が変わって使えなくなるのがオチ…

追記

同じ商品に内容を調整したレビューを再度投稿したところすんなり掲載された。日付は新しいものなのになぜか前のレビューに付いていた「9人のお客様がこれが役に立ったと考えています」という評価がそのまま新しいレビューに付いてきてしまった。はてブでも内容編集して前と中身違うのにスターが付いたままなのなんか申し訳ないなってのあるけど同じ気分になったよ。