Enviar búsqueda
Cargar
WebビューアやURLから挿入ステップの使いどころの考察
•
0 recomendaciones
•
851 vistas
F
frudens Inc.
Seguir
2021年08月21日(土)のFM-Tokyoにて発表した資料です。
Leer menos
Leer más
Software
Denunciar
Compartir
Denunciar
Compartir
1 de 29
Descargar ahora
Descargar para leer sin conexión
Recomendados
データモデリング・テクニック
データモデリング・テクニック
Hidekatsu Izuno
複数時点の単語出現頻度を 扱う時系列データモデリング
複数時点の単語出現頻度を 扱う時系列データモデリング
奈良先端大 情報科学研究科
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
もうひとつのアンチパターン OTLT、あるいは如何にして私はオレオレフレームワークを忌み嫌うようになったか
もうひとつのアンチパターン OTLT、あるいは如何にして私はオレオレフレームワークを忌み嫌うようになったか
suno88
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Mikiya Okuno
SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料
Hironori Miura
SQLアンチパターン~ファントムファイル
SQLアンチパターン~ファントムファイル
Itabashi Masayuki
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
Recomendados
データモデリング・テクニック
データモデリング・テクニック
Hidekatsu Izuno
複数時点の単語出現頻度を 扱う時系列データモデリング
複数時点の単語出現頻度を 扱う時系列データモデリング
奈良先端大 情報科学研究科
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
もうひとつのアンチパターン OTLT、あるいは如何にして私はオレオレフレームワークを忌み嫌うようになったか
もうひとつのアンチパターン OTLT、あるいは如何にして私はオレオレフレームワークを忌み嫌うようになったか
suno88
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Mikiya Okuno
SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料
Hironori Miura
SQLアンチパターン~ファントムファイル
SQLアンチパターン~ファントムファイル
Itabashi Masayuki
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
Techon Organization
my$talk=qr{((?:ir)?reg(?:ular )?exp(?:ressions?)?)}i;
my$talk=qr{((?:ir)?reg(?:ular )?exp(?:ressions?)?)}i;
dankogai
レコメンドアルゴリズムの基礎と「B-dash」におけるシステム構成の紹介
レコメンドアルゴリズムの基礎と「B-dash」におけるシステム構成の紹介
Takeshi Mikami
リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計
Mikiya Okuno
現場で使えるDynamoDBと冪等デザインパターン
現場で使えるDynamoDBと冪等デザインパターン
cmaraiyusuke
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
Denodo
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
グラフデータベース:Neo4j、そしてRDBからの移行手順の紹介
グラフデータベース:Neo4j、そしてRDBからの移行手順の紹介
ippei_suzuki
ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
Yoshitaka Kawashima
データベース設計徹底指南
データベース設計徹底指南
Mikiya Okuno
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
増田 亨
目grep入門 +解説
目grep入門 +解説
murachue
ドメインモデルの育て方
ドメインモデルの育て方
増田 亨
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから
cyberagent
PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選
Tomoya Kawanishi
Rで階層ベイズモデル
Rで階層ベイズモデル
Yohei Sato
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
SQLアンチパターン~スパゲッティクエリ
SQLアンチパターン~スパゲッティクエリ
Itabashi Masayuki
Embulk 20150411
Embulk 20150411
Hiroshi Nakamura
Data Engineering Meetup #1 持続可能なデータ基盤のためのデータの多様性に対する取り組み
Data Engineering Meetup #1 持続可能なデータ基盤のためのデータの多様性に対する取り組み
cyberagent
a-blogcsm な寺子屋 2 in Okazaki
a-blogcsm な寺子屋 2 in Okazaki
Etsushi Ishii
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Masataka Tsukamoto
Más contenido relacionado
La actualidad más candente
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
Techon Organization
my$talk=qr{((?:ir)?reg(?:ular )?exp(?:ressions?)?)}i;
my$talk=qr{((?:ir)?reg(?:ular )?exp(?:ressions?)?)}i;
dankogai
レコメンドアルゴリズムの基礎と「B-dash」におけるシステム構成の紹介
レコメンドアルゴリズムの基礎と「B-dash」におけるシステム構成の紹介
Takeshi Mikami
リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計
Mikiya Okuno
現場で使えるDynamoDBと冪等デザインパターン
現場で使えるDynamoDBと冪等デザインパターン
cmaraiyusuke
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
Denodo
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
グラフデータベース:Neo4j、そしてRDBからの移行手順の紹介
グラフデータベース:Neo4j、そしてRDBからの移行手順の紹介
ippei_suzuki
ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
Yoshitaka Kawashima
データベース設計徹底指南
データベース設計徹底指南
Mikiya Okuno
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
増田 亨
目grep入門 +解説
目grep入門 +解説
murachue
ドメインモデルの育て方
ドメインモデルの育て方
増田 亨
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから
cyberagent
PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選
Tomoya Kawanishi
Rで階層ベイズモデル
Rで階層ベイズモデル
Yohei Sato
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
SQLアンチパターン~スパゲッティクエリ
SQLアンチパターン~スパゲッティクエリ
Itabashi Masayuki
Embulk 20150411
Embulk 20150411
Hiroshi Nakamura
Data Engineering Meetup #1 持続可能なデータ基盤のためのデータの多様性に対する取り組み
Data Engineering Meetup #1 持続可能なデータ基盤のためのデータの多様性に対する取り組み
cyberagent
La actualidad más candente
(20)
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
my$talk=qr{((?:ir)?reg(?:ular )?exp(?:ressions?)?)}i;
my$talk=qr{((?:ir)?reg(?:ular )?exp(?:ressions?)?)}i;
レコメンドアルゴリズムの基礎と「B-dash」におけるシステム構成の紹介
レコメンドアルゴリズムの基礎と「B-dash」におけるシステム構成の紹介
リレーショナルな正しいデータベース設計
リレーショナルな正しいデータベース設計
現場で使えるDynamoDBと冪等デザインパターン
現場で使えるDynamoDBと冪等デザインパターン
アサヒのデータ活用基盤を支えるデータ仮想化技術
アサヒのデータ活用基盤を支えるデータ仮想化技術
イミュータブルデータモデル(世代編)
イミュータブルデータモデル(世代編)
グラフデータベース:Neo4j、そしてRDBからの移行手順の紹介
グラフデータベース:Neo4j、そしてRDBからの移行手順の紹介
ブルックスのいう銀の弾丸とは何か?
ブルックスのいう銀の弾丸とは何か?
データベース設計徹底指南
データベース設計徹底指南
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
目grep入門 +解説
目grep入門 +解説
ドメインモデルの育て方
ドメインモデルの育て方
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから
PostgreSQL のイケてるテクニック7選
PostgreSQL のイケてるテクニック7選
Rで階層ベイズモデル
Rで階層ベイズモデル
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
SQLアンチパターン~スパゲッティクエリ
SQLアンチパターン~スパゲッティクエリ
Embulk 20150411
Embulk 20150411
Data Engineering Meetup #1 持続可能なデータ基盤のためのデータの多様性に対する取り組み
Data Engineering Meetup #1 持続可能なデータ基盤のためのデータの多様性に対する取り組み
Similar a WebビューアやURLから挿入ステップの使いどころの考察
a-blogcsm な寺子屋 2 in Okazaki
a-blogcsm な寺子屋 2 in Okazaki
Etsushi Ishii
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Masataka Tsukamoto
Osoljp201204
Osoljp201204
Masataka Tsukamoto
なるほど分かった!平成最後のApp Serviceハンズオン
なるほど分かった!平成最後のApp Serviceハンズオン
Takayuki Fuwa
Perl Beginners #7 おとなのWAF
Perl Beginners #7 おとなのWAF
Munenori Sugimura
クラウド実践入門 クラウドを使ってみよう
クラウド実践入門 クラウドを使ってみよう
Hiro Fukami
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
Yusuke Wada
今さら聞けないWebサーバの基本知識と選び方
今さら聞けないWebサーバの基本知識と選び方
Endoh Shingo
BlazorにSwaggerを導入してみよう
BlazorにSwaggerを導入してみよう
TomomitsuKusaba
Similar a WebビューアやURLから挿入ステップの使いどころの考察
(9)
a-blogcsm な寺子屋 2 in Okazaki
a-blogcsm な寺子屋 2 in Okazaki
初心者がOpenIndianaで自宅サーバを作ったよって話
初心者がOpenIndianaで自宅サーバを作ったよって話
Osoljp201204
Osoljp201204
なるほど分かった!平成最後のApp Serviceハンズオン
なるほど分かった!平成最後のApp Serviceハンズオン
Perl Beginners #7 おとなのWAF
Perl Beginners #7 おとなのWAF
クラウド実践入門 クラウドを使ってみよう
クラウド実践入門 クラウドを使ってみよう
Mojoliciousでつくる! Webアプリ入門
Mojoliciousでつくる! Webアプリ入門
今さら聞けないWebサーバの基本知識と選び方
今さら聞けないWebサーバの基本知識と選び方
BlazorにSwaggerを導入してみよう
BlazorにSwaggerを導入してみよう
WebビューアやURLから挿入ステップの使いどころの考察
1.
小巻 旭洋 ¦
株式会社フルーデンス ¦ 2021-08-21 WebビューアやURLから挿入ス テップの使いどころの考察
2.
目次 • Webビューア • Webビューアを使う目的 •
Webビューアのまとめ • URLから挿入ステップ(curlコマンド) • curlを使う際に知っておくと良いこと1 • curlを使う際に知っておくと良いこと2 • curlで頑張って実装しないこと
3.
はじめに • 私が個人的に感じたことなので、参考程度に聞いて頂ければと思います。 • お客様に納品することを前提に考えています。 •
なるべく安定して使えるように。 • 間違っている点があれば、ご指摘お願いします。。 • 「私は⃝⃝を気をつけているよ。」という点があれば、教えていただきたい です。
4.
きっかけ
5.
Webビューア
6.
Webビューアを使う目的 • FileMakerの苦手な部分を補う使い方(主にJavaScriptライブラリ) • ビューアとしての使い方 •
スクレイピング(WebサイトにAPIがない場合) • WebビューアのJavaScriptエンジンを計算に活用
7.
Webビューアを使う目的 • グラフ ->
Chart.js / Amazon QuickSight • ピボットテーブルなどの計算 -> PivotTable.js / Amazon QuickSight • ポータルでフィルタリングやソート -> Grid.js / Cheetah Grid / Grid関連 • ポータルの列の並び替え -> Grid.js / Grid関連 • カレンダー表示 -> FullCalendar • QRコードやバーコードの生成 -> qrcode.js / JsBarcode FileMakerの苦手な部分を補う使い方(主にJavaScriptライブラリ)
8.
Webビューアを使う目的 • ドラッグ&ドロップで並び替え ->
JavaScript(@p388cellさん) • 音声を再生, カメラ -> JavaScript(若林さん) • レスポンシブレイアウトのような表現 -> CSS • お絵描きツール -> Fabric.js • ICTツール -> Twilio FileMakerの苦手な部分を補う使い方(主にJavaScriptライブラリ)
9.
Webビューアを使う目的 • 実現するには… • JavaScriptのライブラリを利用 •
アドオンの利用 FileMakerの苦手な部分を補う使い方(主にJavaScript)
10.
Webビューアを使う目的 • 課題や考慮すること… • 各ライブラリのバージョンを最新にしていると動かなくなる可能性がある。 •
FileMakerのバージョンと「FileMaker.PerformScriptWithOption」に注 意。 • 大きなバイナリファイルのやりとりやPSOSの引数の制限などにも注意。 • リソースをCDNから取得していて、ロードに時間がかかる場合に「定義し ていない変数がある。」などのエラーが発生する可能性がある。 FileMakerの苦手な部分を補う使い方(主にJavaScript)
11.
Webビューアを使う目的 • PDFやメディアなどのビューア • Googleマップなどの埋め込む機能があるWebサイトの表示 ビューアとしての使い方
12.
Webビューアを使う目的 • 特定のWebサイトのソースを取得したい。 • (例)取引先が公開しているWebサイトにログインし、CSVをダウンロードし て、FileMakerに取り込みたい。 スクレイピング(WebサイトにAPIがない場合)
13.
Webビューアを使う目的 • 実現するには… • MBSプラグインの活用 •
即時関数(即時実行関数式)の活用 • AppleScriptを活用 • GetLayoutObjectAttribute ( "Webビューア" ; "content" ) を活用 スクレイピング(WebサイトにAPIがない場合)
14.
Webビューアを使う目的 • 実現するには… • スクレイピング用のツールやライブラリを活用 •
Puppeteer(Node.js)、Selenium(Python)などを使う。 • なぜ、Webビューアを使わないのか? • Webビューアでアクセスして、正常に表示されないケースがある。 • CSVファイルをダウンロードして、そのCSVファイルにアクセスして…などの処理を FileMakerで書くのは大変。 • 実現したいことによるが、専用のツールを使う方が、情報も多く効率が良い。 スクレイピング(WebサイトにAPIがない場合)
15.
Webビューアを使う目的 • 課題や考慮すること… • Webサイトのコードが突然変わることがあるため、エラー処理に気をつける必要がある。 •
エラーが発生した場合、Slackに通知するなど、エラーに気づく環境を整える必要がある。 • Webビューアからのアクセスだと、Webサイト側で、アクセスを制御される可能性がある。 • 長期的に見て、Webビューア関連の更新時に、影響をうける可能性がある。 • 実装方法によっては、将来動かなくなる可能性がある。 • コードに認証情報などは保存しないこと。 • 規約を確認すること。数秒ごとにアクセスするなどマナーにも気をつけること。 スクレイピング(WebサイトにAPIがない場合)
16.
Webビューアを使う目的 • 課題や考慮すること… • https://www.digitalboo.net/post/3571/fm-wp-webview/amp •
https://www.digitalboo.net/post/2358/fm16-notdrag スクレイピング(WebサイトにAPIがない場合)
17.
Webビューアを使う目的 • どうやってFileMakerと連携するのか… • AWS
Lambda や Cloud Functions を活用するとよい。 スクレイピング(WebサイトにAPIがない場合)
18.
Webビューアを使う目的 • APIの戻り値のJSONをフィルターしたい。 • 大きなJSONのパースや計算を高速化したい。 •
「FileMaker Data API を実行」の戻り値を活用したい。 • 動的なJSON(Gmailのレスポンスなど)をパースしたい。 WebビューアのJavaScriptエンジンを計算に活用
19.
Webビューアを使う目的 • 実現するには… • WebビューアのJavaScriptエンジンはFileMakerよりも速いのか? •
WebビューアのJavaScriptエンジンとFileMakerの比較。 • 即時関数を活用する。 • Webダイレクトでは機能しないかもしれない。 WebビューアのJavaScriptエンジンを計算に活用
20.
Webビューアを使う目的 • 課題や考慮すること… • FileMaker.PerformScriptWithOptionの使い方に注意。 •
オプションを理解すること。 • 必要があれば、非同期関数を理解すること。 WebビューアのJavaScriptエンジンを計算に活用
21.
デモ • FileMakerでスクレイピング • Puppeteerでスクレイピング •
JavaScriptエンジンとFileMakerの比較
22.
Webビューアのまとめ • スクレイピングなど、外部のデータにアクセスするような場合は、Webビュ ーアを使うことはお勧めしない。 • 少し勉強が必要ですが、スクレイピング用のツールやライブラリを活用する ことをお勧めします。 •
JavaScriptエンジンは高速なので、大きめのJSONを取り扱う場合など、活用 したい。 • 即時関数が便利。
23.
おまけ • Amazon QuickSight(BIツール)を活用することが増えた。 •
安価で、Webビューアに埋め込みもできる。 • FileMakerは必要になるCSVファイルをS3にアップロードするだけで良い。 • QuickSightがS3のCSVデータを定期的に最新の状態に更新してくれる。 • 集計する機能が不要になることもある。 見栄えの良いグラフが欲しいのか?数字を分析するためのグラフが欲しいのか?
24.
URLから挿入ステップ (curlコマンド)
25.
curlを使う際に知っておくと良いこと 1 • デバッグ方法について •
APIのログファイルは、別ファイルに分割する方が良い。 • サイズが大変なことになる。 • APIやJSONの練習には、以下のWebサイトがお勧め。 • https://httpbin.org • https://badssl.com • https://github.com/public-apis/public-apis
26.
curlを使う際に知っておくと良いこと 2 • スクレイピングと同様で、APIの仕様が変更される可能性があるので、エラー処理を 実装すること。 •
Googleのフリープランのアプリに回数制限がかかるようになったことなど。 • AWSの障害など、正常にAPIが実行できないケースを考慮すること。 • エラーに気づける環境を準備する。 • サーバーサイドで実行する場合、ローカルでファイルを開いておく必要があること。 • 規約を確認し、回数制限など確認すること。
27.
curlで頑張って実装しないこと • シェルスクリプトでプログラミングをしているようなものなので、curlで頑張 って実装するより、ライブラリを活用する方が効率が良い。 • APIのドキュメントにcurlのサンプルがない場合も多い。 •
ライブラリのドキュメント、バージョンアップ時の移行方法など、一般的なプ ログラミング言語を一つ覚える方が効率が良い。 • 習得が難しいのであれば、Claris Connectなどを使う方が良い。
28.
デモ • curlの --show-error
オプション
29.
終わり • FileMakerやOSのアップデートと同様に、APIも定期的にアップデートされる ことを考慮しておく。 • ガッツリWebビューアを組み込みすぎると、将来、大変になる可能性があ る。 •
お客様にも、背景を伝える必要がある。
Descargar ahora