FileMaker でスクレイピング
前回は Chrome の拡張機能を使ったスクレイピングについて書いた。
Mac でお手軽スクレイピングツール – with a Christian Wife
https://wacw.cf/2019/02/25/scraping-with-mac/
次は FileMaker を使った簡単なスクレイピングに挑戦する。FileMaker の Web ビューアを使い、そのソースコードから情報を引っ張り出す方法だ。
(1)Web ビューアで適当なページを表示する。
(2)Web ビューアのオブジェクト名を「WebPage」などにする。
(3)ソースコード表示用のフィールドを作成する。
このフィールドを計算フィールドにして GetLayoutObjectAttribute ( "WebPage" ; "content") とすればソースコードが表示されるはずなんだけど、どうやらページの読み込みが遅いと表示がうまくいかないようだ。
(4)そこで、3は一旦空のフィールドとしておき、Web ビューアの中身が読み込まれた後に、スクリプトから SetField で3のフィールドにソースコードを表示されるようにすればいい。
(5)たとえばソースコードからページのタイトルを取得するなら以下のような計算フィールドを作る。
1Middle (
2source ;
3Position( source ;"<title>" ; 1 ; 1 ) + 7 ;
4Position( source ;"</title>" ; 1 ; 1 ) - Position( source ;"<title>" ; 1 ; 1 ) - 7
5)
同様にすればソースコードの好きな値を引っ張り出せる。
参考:
Webビューアからデータを取得する | 神戸上空、午前零時
https://kndtk.com/web%E3%83%93%E3%83%A5%E3%83%BC%E3%82%A2%E3%81%8B%E3%82%89%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B/
子育てSOHOオヤジ量産プロジェクト[113] FileMaker 8.5登場!! ~その2:Webからテキストを抜き出す/茂田カツノリ – 日刊デジクリ
http://bn.dgcr.com/archives/20060720142225.html
頑張れ♪店長!について Webビューアを活用しよう | ねぎだく♪つゆぬき! ~頑張れ♪店長!のヒ・ミ・ツ~
https://ameblo.jp/nbs-staff/entry-10943282815.html
GetLayoutObjectAttribute
https://fmhelp.filemaker.com/help/12/fmp/jp/html/func_ref3.33.10.html
Middle
https://fmhelp.filemaker.com/help/15/fmp/ja/index.html#page/FMP_Help/middle.html
FileMakerでposition関数の使い方 – J's memory
https://bacque.biz/archives/8368
Position
https://fmhelp.filemaker.com/help/12/fmp/jp/html/func_ref3.33.78.html