質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Q&A

解決済

1回答

2400閲覧

[Spreadsheet] XPathでエラー IMPORTXML

Yukiya025

総合スコア86

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

0グッド

0クリップ

投稿2018/10/17 06:51

Google Spreadsheetでスクレイピングができるということなので面白そうだと思い、試しにSpreadsheet上で書いたのですが、Formula parse error.が出て本のタイトルが取得できません。

試したコード

A1にURL(https://amzn.to/2J4p44U)が入っています。

=IMPORTXML(A1,"//*[@id="ebooksProductTitle"]/text()") =IMPORTXML(A1,"//span[@id="ebooksProductTitle"]/text()") =IMPORTXML(A1,"//*[@id="ebooksProductTitle"]/text()/h1/span")

どこを変えたら本のタイトルが表示されるのでしょうか(T_T)
amazon

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

日本語環境だと「数式の解析のエラーです」との表示

=IMPORTXML(A1,"//*[@id='ebooksProductTitle']/text()") =IMPORTXML(A1,"//span[@id='ebooksProductTitle']/text()") =IMPORTXML(A1,"//*[@id='ebooksProductTitle']/text()/h1/span")

こうすれば数式の解析エラーは回避できますが、「インポートしたXMLコンテンツを解析できません」とのエラーになります。
こちらの質問でも、特定のサイトでのみできない、との記載があるとおり、IMPORTXMLは万能ではないようです(取得できないページがある)

※ 短縮URLは(内部的にページ遷移が発生しており)失敗する可能性が高いと思いますので、"https://www.amazon.co.jp/dp/B07GSTJPFD/"でテストしています。

投稿2018/10/17 08:14

papinianus

総合スコア12705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yukiya025

2018/10/17 08:23

papinianus様、ありがとうございます。今度は通常のURLでやってみましたが、`Loading`となった後#N/Aとなってしまいましたf^^; やはりおとなしくPythonを使ってやったほうがいい感じでしょうかorz めっちゃかんたんにスクレイピングできる! と思って嬉しかったのですが。。。
papinianus

2018/10/17 08:27

その#N/Aにマウスをあわせると「インポートしたXMLコンテンツを解析できません」と出ませんでしょうか(英語なのかもしれませんが)? できるページもあるけれども、動的に生成するページは苦手みたいですね(個人的に知っている範囲ではクックパッドはできています) はまれば簡単ですよね。できないページが諦められるかどうか。代替手段を作るくらいなら最初からその手段(python)でやったほうがいいでしょうね。
Yukiya025

2018/10/17 08:35

そういえば"Imported Xml content can not be parsed."と出ます。 「解析できません」ですね。。。 最初みたとき「めっちゃ簡単にスクレイピングできるやーん!」って舞い上がったのですが笑 おとなしくPython使うことにします^^; 質問を投稿してよかったです(≧▽≦) しなかったら諦めきれずに探していたと思うので。。。 ありがとうございましたm(_)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問