私はこれと他のバージョンを無駄にしようとしましたか?誰でも助けてくれますか?Googleスプレッドシートでimportxmlを使用してテキストを取得する
=IMPORTXML("http://performance.morningstar.com/fund/ratings-risk.action?t=MWTRX", "//*[@id='div_ratings_risk']/table/tbody/tr[4]/td[3]/text()")
私はこれと他のバージョンを無駄にしようとしましたか?誰でも助けてくれますか?Googleスプレッドシートでimportxmlを使用してテキストを取得する
=IMPORTXML("http://performance.morningstar.com/fund/ratings-risk.action?t=MWTRX", "//*[@id='div_ratings_risk']/table/tbody/tr[4]/td[3]/text()")
id = #div_ratings_riskのdiv要素は最初は空であり、テーブルではありません。 Googleのスプレッドシートはそこにはないが、最初に読み込む必要のあるコンテンツを解析できません。
コンテンツ(表)は、あなたが動的に別のURLからのjQueryを使用してロードされてGoogleスプレッドシートにからデータを取得してみてください。たとえば、次のURLを使用してそのURLを取得できます。 XHRリクエスト用のクローム開発ツールとフィルタあなたはそれが動作することをHTMLから直接コンテンツを解析する場合
。したがって、数式をそのURLに変更してXPathを次のように変更する必要があります。
=IMPORTXML("http://performance.morningstar.com/ratrisk/RatingRisk/fund/rating-risk.action?&t=XNAS:MWTRX®ion=usa&culture=en-US&cur=&ops=clear&s=0P00001G5L&ep=true&comparisonRemove=null&benchmarkSecId=&benchmarktype=", "//table/tbody/tr[4]/td[3]/text()")
ありがとうマット!今日は何か新しいことを学んだ。 – rearThing
こんにちは! 1つではありませんが、複数の理由があります。 1. Googleもhtmlドキュメントを解析していますが、htmlも整形式である必要があります。ドキュメントは解析できないかもしれません。 2. Googleはおそらく動的に追加されたコンテンツではなく、ソースを解析しています。あなたのXpathで参照しているdiv#div_ratings_riskはソースに埋め込まれていません。閲覧元:http://performance.morningstar.com/fund/ratings-risk.action?t = ChromeブラウザのMWTRXを確認してください。 – matths
また、この回答を確認することもできます:https://stackoverflow.com/questions/34217955/importxml-imported-content-emptyあなたの場合、解析しようとするテーブルを表示するためにjQueryによってフェッチされたURLはhttp://ですperformance.morningstar.com/ratrisk/RatingRisk/fund/rating-risk.action?&t=XNAS:MWTRX®ion=usa&culture=en-US&cur=&ops=clear&s=0P00001G5L&ep=true&comparisonRemove=null&benchmarkSecId=&benchmarktype= – matths