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

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

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

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

解決済

1回答

3190閲覧

Google Spread Sheetの「importxml」でリンクが取得できない

onioonioonio

総合スコア25

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

0クリップ

投稿2019/02/23 06:23

前提・実現したいこと

Google Spread Sheetの「importxml」関数を使用して、特定のページから
リンクを取得しようとしておりますが、リンク先が省略されたURL(?)のように表記
されているからか、「a href」でリンク先を取得できません。

発生している問題・エラーメッセージ

数式を実行すると、
「インポートしたコンテンツは空です」
と、エラーメッセージがでます。

該当のソースコード

Google Spread Sheet 「importxml」

A1には、以下のurlを入力してあります。

https://www.digimart.net/search?fretOption=&nosalep=false&keywordOr=&dispMode=ALL&soldoutDisp=false&specOption=&weightOptionTo=&brandnames=Fender+Japan&brandnames=&brandnames=&conditionFrom=&brandId=&keywordNot=&keywordPhrase=&movieurlp=false&freeshippingp=false&salep=false&bodyOption=&neckOption=&topMaterialOption=&parallelimportp=false&manufactureYearTo=2000&productNameNot=&sideMaterialOption=&categoryId=&noBackOrderP=false&canTradeP=false&neckScaleOption=&fingerboardOption=&pickupComponentOption=&manufactureYearFrom=2000&weightOptionFrom=&otherOption=&soldoutDispCheck=false&ecpurchasep=false&category12Id=101&shopsalep=false&shopNoNot=&priceFrom=&tremolantOption=&backMaterialOption=&readCount=20&areaId=&neckjointOption=&materialOption=&categoryIdNot=&priceTo=&pickupOption=&tagWordsNot=&maxCount=20&keywordAnd=&tagWords=&brandIdNot=&keyword=&ecCardP=false&conditionTo=&sortKey=PRICE_ASC&productTypes=USED&productTypes=VINTAGE&shopNo=&category3Id=10101&noparallelimportp=false&areaPrefInfoId=&stringsoption=&noshopsalep=false&term=&bodysizeOption=&bodyShapeOption=&currentPage=3&nosoldoutp=true&productName=&campaign1p=false&officialCouponShopP=false&favorite=false&dispFavorite=false

取得しようとした部分は、以下の場所です。

<p class="ttl"><a href="/cat01/shop4734/DS04995062/">Fender Japan&nbsp;'02-'04 ST57-TX</a></p>

試したこと

数式を以下のようにしてみました。

=IMPORTXML(A1,"//p[@class='ttl']")

=IMPORTXML(A1,"//a[@class='ttl']")

いずれも同じエラーが発生します。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

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

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

guest

回答1

0

ベストアンサー

前提条件

 ・<p class="ttl"><a href="/cat01/shop4734/DS04995062/">Fender Japan '02-'04 ST57-TX</a></p>の商品は掲載されていたリンク先にはないようです
・以下2つの方法の提案です。
①「各商品のリンクURLを取得する」
②「上から●番目の商品のリンクURを取得する」


回答① 各商品のリンクURLを取得する場合

 ・セルA2に「=IMPORTXML(A1,"//div[@class='itemSearchIntro']//p[@class='ttl']/a/@href")」を入力
・セルA3に「="https://www.digimart.net"&E3」を入力

 これで各商品のリンクURLが一覧で表示されるはずです。


回答② 上から●番目の商品のリンクURを取得する

 ・セルA2に「="https://www.digimart.net"&IMPORTXML(A1,"//div[@class='itemSearchIntro']/div[●]/div[1]/div[1]//p[@class='ttl']/a/@href")」を入力する
・●部分は取得したいURLの商品の順番の数字(半角)をいれてください。

投稿2019/02/24 16:42

編集2019/02/24 16:44
dett

総合スコア115

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

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

onioonioonio

2019/02/27 01:03

ご提案ありがとうございました。 上記方法で解決することができました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問