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

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

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

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

Q&A

解決済

1回答

2472閲覧

GASでParserを利用しスクレイピングした際、文字列でなくfunctionが帰ってきます。文字列を取得する方法が知りたいです。

babybloom2020

総合スコア6

Google Apps Script

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

0グッド

0クリップ

投稿2020/09/04 06:50

前提・実現したいこと

該当のHP(大阪府報道発表)からタイトル一覧を文字列で取得したい。

発生している問題

parser.from().to()を利用すると文字列でなくfunctionが帰ってきて
取得したい文字列が取得できない。

該当のソースコード

google apps script

####ソースコード
function getTitles(){
var url = "http://www.pref.osaka.lg.jp/hodo/index.php?HST_TITLE1=%83R%83%8D%83i&SEARCH_NUM=10&searchFlg=%8C%9F%81@%8D%F5&site=fumin";
var html = UrlFetchApp.fetch(url);
var content = html.getContentText('shift_jis');

var parser = Parser.data(content);
var target = parser.from('<tbody>').to('</tbody>').iterate;

Logger.log(typeof target);  

}

試したこと

プログラミング初心者で知識に乏しいため、書籍、WEB等検索しましたがヒントにたどり着けませんでした。
また、ソースコードが正しいか自信がなかったので、他のページで同様のことを実施したところ
こちらは問題なく狙った文字列が取得できました。

function latestupdateday(){
//更新日を取得
var url = "https://web.pref.hyogo.lg.jp/kk03/200129.html#kensa_new";
var html = UrlFetchApp.fetch(url);
var content = html.getContentText('UTF-8');

var parser = Parser.data(content);
var updateday = parser.from('<h3>').to('</h3>').build();
var target = updateday.split('(')[1];
var target2 = target.split(')')[0];
}

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

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

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

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

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

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

mdj

2020/09/04 07:08

該当ページのソースにtbodyが無いように見えるのですが
babybloom2020

2020/09/04 07:18

ご確認ありがとうございます! tbodyですが、Chromeを使い該当ページのタイトル上で右クリック→検証で表示されていたので、使ってみました。WEBに関しての知識も乏しく見当ちがいであればすいません。 ご教授いただけると助かります! <tbody><tr> <th class="box_list_col0" width="11%"><h3>提供日</h3></th> <th class="box_list_col1" width="7%"><h3>提供時間</h3></th> <th class="box_list_col2" width="12%"><h3>部局名</h3></th> <th class="box_list_col3" width="70%"><h3>タイトル</h3></th> </tr> <tr class="even"> <td class="listDisp_color box_list_col0">2020年9月3日</td> <td class="listDisp_color box_list_col1">19時40分</td> <td class="listDisp_color box_list_col2">教育庁</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39246">府立学校における新型コロナウイルスへの感染による臨時休業の実施について</a></td> </tr> <tr class="odd"> <td class="listDisp_color box_list_col0">2020年9月3日</td> <td class="listDisp_color box_list_col1">18時50分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39237">新型コロナウイルス感染症患者の発生(5975例目の再陽性、8755例目から8828例目)及び9月2日発表分の訂正について</a></td> </tr> <tr class="even"> <td class="listDisp_color box_list_col0">2020年9月2日</td> <td class="listDisp_color box_list_col1">19時20分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39222">新型コロナウイルス感染症患者の発生(8659例目から8754例目)及び患者の死亡について</a></td> </tr> <tr class="odd"> <td class="listDisp_color box_list_col0">2020年9月1日</td> <td class="listDisp_color box_list_col1">22時0分</td> <td class="listDisp_color box_list_col2">教育庁</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39220">府立学校における新型コロナウイルスへの感染による臨時休業の実施について</a></td> </tr> <tr class="even"> <td class="listDisp_color box_list_col0">2020年9月1日</td> <td class="listDisp_color box_list_col1">21時40分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39219">「新型コロナウイルス感染症患者の発生(2207例目の再陽性、8545例目から8658例目)及び患者の死亡について」の訂正について</a></td> </tr> <tr class="odd"> <td class="listDisp_color box_list_col0">2020年9月1日</td> <td class="listDisp_color box_list_col1">20時10分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39204">新型コロナウイルス感染症患者の発生(2207例目の再陽性、8545例目から8658例目)及び患者の死亡について</a></td> </tr> <tr class="even"> <td class="listDisp_color box_list_col0">2020年8月31日</td> <td class="listDisp_color box_list_col1">18時30分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39196">新型コロナウイルス感染症患者の発生(8492例目から8544例目)及び患者の死亡並びに8月30日発表分の訂正について</a></td> </tr> <tr class="odd"> <td class="listDisp_color box_list_col0">2020年8月31日</td> <td class="listDisp_color box_list_col1">14時0分</td> <td class="listDisp_color box_list_col2">商工労働部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39157">「新型コロナウイルス感染症に関する府内企業の実態調査」の結果について</a></td> </tr> <tr class="even"> <td class="listDisp_color box_list_col0">2020年8月30日</td> <td class="listDisp_color box_list_col1">18時40分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39195">新型コロナウイルス感染症患者の発生(8430例目から8491例目)及び患者の死亡について</a></td> </tr> <tr class="odd"> <td class="listDisp_color box_list_col0">2020年8月29日</td> <td class="listDisp_color box_list_col1">18時40分</td> <td class="listDisp_color box_list_col2">健康医療部</td> <td class="listDisp_color box_list_col3"><a href="http://www.pref.osaka.lg.jp/hodo/index.php?site=fumin&amp;pageId=39193">新型コロナウイルス感染症患者の発生(6378例目の再陽性、8340例目から8429例目)について</a></td> </tr> </tbody>
guest

回答1

0

ベストアンサー

iterateの呼び出しにカッコ()がありません。

JavaScript

1//var target = parser.from('<tbody>').to('</tbody>').iterate; //誤 2var target = parser.from('<tbody>').to('</tbody>').iterate(); //正

投稿2020/09/04 07:32

draq

総合スコア2573

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

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

babybloom2020

2020/09/04 10:24

ご教授ありがとうございます! めちゃくちゃ基本的なミスなのに、丁寧にご教授いただき本当にありがとうございます! ずっと悩んでいたので、とても助かりました! ありがとうござました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問