データスクレイピングでアマゾンの商品のURLが取れない

Studio2018.3.3、Win10、ブラウザIEを利用しています。
Amazonで特定のキーワード(例えば傘など)で検索し、商品名の部分をDataScrapeして、Column2にもCheckを入れ、URLも一緒に取得しようとしています。
商品名の方はうまく取得できるのですが、URLの方が添付画像のように、httpsから始まるURLが取れません。構造化データをいじればいいかなというところまでは理解できますが、具体的にどこをどういじればいいのかわかりません。。。どなたかご教授願えませんか
%E3%82%AD%E3%83%A3%E3%83%97%E3%83%81%E3%83%A3

こんにちは

対象サイトのHTMLのソース上はパス部分だけの記述なのでこのような結果になっています。
パス部分だけのURLは、通常それを取得したページのプロトコルなりドメイン名(ホスト名)と同じと解釈されますので、
大元のページのプロトコルやホスト名
https://www.amazon.co.jp
とScrapingで取得した文字列と結合させれば良いかと思います。

#ブラウザは上記を解釈して、自動的に補完して表示しています。

Yoichi さん!ありがとうございます!解決しました。おっしゃる通りでした。確認不足でした。
しかし、また別の問題がありまして。
傘の検索結果で、添付(キャプチャ2)のように、”スポンサープロダクト”というタグが付いているものだけ拾ってしまいます。このタグがついていないものも同じようにData Scrapingで一度に取得したいのですが、不可能ですよね?

こんにちは

第一要素でスポンサープロダクトの最後のアイテム、第二要素でそうでないものの最初のアイテムを選択すると通じて取れるのではないかと思いますので、一度お試しください。

1 Like

Yoichiさん、ありがとうございます!ご指示いただいた方法で解決しました。わかってみると単純ですが、ずっと悩んでいました。助かりました!

こちらの質問と回答を拝見させていただきまして私も同じ問題を抱えておりましたので質問させていただきます。

大元のURL(https://www.amazon.co.jp)を、スクレイピングで入手したそれぞれのURLに結合し、同じセルに、一つのURLとして格納するにはどのような方法をとると良いでしょうか。
(例えば「https://www.amazon.co.jp」 と「/go/slredirect/***************」を結合させてhttps://www.amazon.co.jp/go/slredirect/***************として同じセルに入れたいということです)

ちなみに「データテーブルの結合」や「データテーブルのマージ」を使っても、別々のセルに入ったまま横並びにすることはできますが、上記のような操作はできません。

ご回答お待ちしております。

もとのセルが row("URL") であると仮定して、Assign アクティビティで次のように実装できるかと思います。

row("URL") = "https://www.amazon.co.jp/" & row("URL").ToString

1 Like

ありがとうございます!教えていただいた通りの記述を繰り返し処理の中身としたら全行に当てはめることができました!
本当に助かりました。ありがとうございます!!

2 Likes