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

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

新規登録して質問してみよう
ただいま回答率
85.34%
G Suite

G Suiteは、Google AIが組み込まれたセキュアでクラウドネイティブのコラボレーションアプリや生産性向上アプリを1つにまとめた統合スイートです。Gmail、ドキュメント、ドライブ、カレンダー、Meet などが含まれます。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

461閲覧

[Google Apps Script] スクレイピング/Parserライブラリ/値が取得できない

Dadada_c.

総合スコア59

G Suite

G Suiteは、Google AIが組み込まれたセキュアでクラウドネイティブのコラボレーションアプリや生産性向上アプリを1つにまとめた統合スイートです。Gmail、ドキュメント、ドライブ、カレンダー、Meet などが含まれます。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2023/11/26 02:15

価格データを取得したい

前提

  • Google Apps Scriptの「Parserライブラリ」を使用してデータ取得中
  • スプレッドシートのA列にあるURLリストを順番に習得している
  • 価格以外の箇所は取得できる
  • Google Apps ScriptのPerserライブラリ取得ししてきたhtmlの中から「.from('<ul>').to('</ul>')」の様な形でデータを絞り込んで取得することができる(参考サイト

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

  • エラーはでないが価格の箇所を取得できない

該当のソースコード

Google

1var html = UrlFetchApp.fetch(url); 2var html_parse = html.getContentText(); 3 var text = Parser.data(html_parse).from('price-num">').to('</em>').build();

url...スプレッドシートのA列のリスト

<em class="seminar-detail-price-num">9,900</em>

試したこと

  • 上のブロックとその上のブロック単位でも習得を試みたがうまく行かなかった
<div class="seminar-detail-price">¥<em class="seminar-detail-price-num">9,900</em></div>
<div class="seminar-detail-head-box"><div class="seminar-detail-sub-ttl">効率化と両立できる「信頼関係の構築」方法</div> <div class="seminar-detail-ttl-box"><h1 class="seminar-detail-ttl">インサイドセールスにおける顧客対応のポイント</h1> <div class="seminar-detail-fav-btn-box"><button data-atlas-trackable="nbs_od_seminar_favorite_E1000001" data-product="nbs-od" data-page="seminar-article" data-section="seminar-favorite" data-button="favorite" class="bookmark-btn"><i class="bookmark-btn-icon"></i></button></div></div> <div class="seminar-detail-msg-box"><p class="seminar-detail-msg-ttl">メッセージ</p> <div class="seminar-detail-msg-tx">事業の成長スピードを促進するセールスイネーブルメントでは、初めて顧客と出会うインサイドセールスの重要性が高いとされています。<br>単純に顧客対応数をこなして効率化できたといって、商談設定後の成果が必ずしも高くなるとは限りません。<br>本講座では、インサイドセールスにおける顧客対応のポイントを、経験豊かな講師のわかりやすい解説により網羅的に学習することができます。顧客の目的の把握や打ち合わせ準備、信頼関係構築のテクニックやLTVの理解など、明日から役立つノウハウが満載の内容です。</div></div> <!----> <!----> <div class="seminar-detail-purchase-box"><div class="seminar-detail-price">¥<em class="seminar-detail-price-num">9,900</em></div> <!----> <div class="seminar-purchase-set"><div class="seminar-detail-purchase-btn-box"><button data-atlas-trackable="nbs_od_seminar_add-cart" data-product="nbs-od" data-page="seminar-article" data-section="add-cart" data-button="add-cart" class="purchase-cart-btn"><i class="primary-btn-icon icon-cart"></i>カートに入れる</button></div> <div class="seminar-detail-purchase-btn-box"><button data-atlas-trackable="nbs_od_seminar_purchase-A" data-product="nbs-od" data-page="seminar-article" data-section="top-purchase" data-button="order-start-A" class="purchase-btn"><i class="primary-btn-icon icon-cart-check"></i>すぐに買う</button></div> <div class="seminar-detail-mult-btn movie-sub-btn"><button type="button" class="secondary-btn">複数名受講・代理申込みの方</button></div></div></div></div>

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

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

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

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

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

guest

回答1

3

ベストアンサー

ブラウザでJavaScriptの実行をオフにしてそのサイトを表示してみたところ、価格の部分を含めた一部コンテンツが表示されませんでした。

なのでそのサイトは、価格を含む一部コンテンツをJavaScriptで動的に構築していると考えられます。

この場合、質問に記載されているコードでは、JavaScriptオフの状態のHTMLしか取得できないため、価格情報を取ってこれないことになります。

JavasScriptで動的に構築されるコンテンツをGASで取得する場合は、PhantomJSCloud等のライブラリを使用してください。

投稿2023/11/26 02:46

編集2023/11/26 02:48
退会済みユーザー

退会済みユーザー

総合スコア0

kei344, hawawa, Dadada_c.👍を押しています

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

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

Dadada_c.

2023/11/26 03:17

さっそくありがとうございます!助かりました!! PhantomJSCloudにて無事取得できました!!またよろしくお願いします!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.34%

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

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

質問する

関連した質問