質問: スプレッドシートでIMPORTXMLができない ----------------------- 下記の様に記載しているのですが、インポート内部エラーがでます。 何卒ご教示の程、宜しくお願い致します。 ``` IMPORTXML("https://item.rakuten.co.jp/zealmarket/121-2670-2675/" , "//*[@id='rakutenLimitedId_cart']/tbody/tr[2]/td[2]/span[1]") ```
回答: * 内部エラー こちらでは「取得したコンテンツが空」となります。確かにエラー表記ですが、これはそのXPATHでは取れない、ことを意味しているので、記載に誤りがあるわけではないです。 * 調査 `=IMPORTXML("https://item.rakuten.co.jp/zealmarket/121-2670-2675/" , "//*[@id='rakutenLimitedId_cart']")` このようにすると ``` {{price}}円で購入可! {{note}} (楽天カード入会&ポイント利用の場合) こちらの商品でのご利用例 お買い上げの商品の金額(小計) {{retailPrice}}円 楽天カード入会特典 {{point}}ポイント -{{point}}円 入会特典ポイント利用後の お買い上げ金額(小計) {{actualPrice}} 円 ``` 2列ほど右に↑のような文字が取れました(実際にはもっと大量の文字が1セルに入っています)。 {{}}で囲まれた部分に動的に取得した値を書き込んでいるなどが想定され、IMPORTXMLでの取得は困難かと思います。 基本的に、jsで非同期に取得するもの、はIMPORTXMLでは取得できません(xmlのコンテンツではないので)。 ※1セルに入っているということは、これ全体がXMLの1Elementになっている可能性が高く、目的の要素に限定した取得は困難であろう、という趣旨です。