Column

コラム

  • 【API・データ検証奮闘記】#6.WorkflowでHTML...

【API・データ検証奮闘記】#6.WorkflowでHTMLデータを取得してみた

本コラムでは、APIやデータに関連する言語などを無邪気に触ってみた備忘録として、ライトに記載していきます!
「ちょっと違くない」「他にいい方法あるのに」といったご意見もあるかと思いますが、何卒お手柔らかに!!

<プロフィール>
富松 良介
2017年、株式会社サイバー・コミュニケーションズ(CCI)入社。Oracle Bluekai・Treasure Data等のDMPや、AWS・GCP等のPublicCloud領域を担務。2019年6月よりデータの利活用を推進するコンサルティング会社「株式会社DataCurrent」に出向し、事業会社の基盤構築・運用や自社ソリューション開発を担当。

●HTMLデータ取得をしてみた

ボス
ボス
Webサイトのデータをとって欲しい。
モブ
モブ
かしこまり!!

TreasureData workflowを活用したHTMLデータ取得の手順から取得した結果までをご紹介致します。

●ステップ1. どうやって取得できるか調査してみた

モブ1
モブ1
有料のツール契約する!!
モブ2
モブ2
HTMLソースから気合と根性で手動コピペ!!
モブ3
モブ3
Python!!
意識高いモブ
意識高いモブ
Workflowなら取得から格納までワンストップだぜ!!
モブ
モブ
Treasure Data Workflowで取得することにしよう!!
ボス
ボス
それでやってくれ。

●ステップ2. データ取得してみた

早速Workflowでデータを取得してみる。

弊社コーポレートサイトの、最新の新着情報を取得してみます!

※データ取得する際は、サイト利用規約等を確認し実施してください。

timezone: Asia/Tokyo

_export:
  td:
    database: your_database
    table: your_table

  base_endpoint: https://www.datacurrent.co.jp/
  date: ${moment(session_time).format("YYYY-MM-DD HH:mm:ss")}

+get_data:
    for_each>: 
      directory: ['news-latest']
    _do:
      +request:
        http>: ${base_endpoint}${directory}/
        method: GET
        store_content: true

      +write_to_table:
        td>:
        query: |
          SELECT
            '${directory}' AS directory,
            regexp_extract(
              '${(http.last_content).replaceAll(regex, "").match("<tr>.+?</tr>")}',
              '[\d]{4}\.[\d]{2}\.[\d]{2}'
            ) AS relese_date,
            regexp_replace(
              '${(http.last_content).replaceAll(regex, "").match("<tr>.+?</tr>")}',
              '^.+?<span class=\\"el_news\\">|</span>.+?$',
              ''
            ) AS content_category,
            regexp_replace(
              '${(http.last_content).replaceAll(regex, "").match("<tr>.+?</tr>")}',
              '^.+?alt=\\\"|\\.*?$|</a></td></tr>\"\]$',
              ''
            ) AS content_title,
            '${get_date}' AS get_date
        insert_into: ${td.database}.${td.table}
        engine: presto

できた!!!

●ステップ3. 取得結果

●最後に

弊社では、定点的なリサーチやトレンドの分析をおこなっています。性別や年代等の属性を検索トレンドのダッシュボード提供等様々なパッケージをご用意しておりますので、お気軽にお問い合わせください。

本データに関するお問い合わせは下記にて承ります。
株式会社DataCurrent
info@datacurrent.co.jp

人気のコラムランキング

PICK UP

企業のDX推進におけるダッシュボード内製化について

DXmarketingPICK UP コラムダッシュボード内製化

企業のDX推進に向けた人材教育支援について

GA4marketingPICK UP コラム内製化

【データプライバシーコラム】電気通信事業法改正の解説(2022年7月時点)

CMPPICK UP コラムデータプライバシーデータプライバシーコラム個人情報保護

CMP導入時の注意点

CMPPICK UP コラムデータプライバシーデータプライバシーコラム個人情報保護

TOPへ
戻る