subwaypkpk tech log

FileMakerとかPythonとか

FileMakerから頑張ってWebサイトへのログインを自動化する

webビューアでサイトログイン

動機

業務上つかうサイトをFilemakerに組み込みたいというニーズがあった。 ただ、そのサイトの完成度がかなり高いため、変にAPIを使ってFMのシステムにするより、そのサイトを使ってもらった方がいい(開発工数的にも)と思った。

[Webを開く], [Webから挿入]スクリプト

最初はPOST投げてそれをうまいことできんかと思った。が、うまく行かない。 ここで質問した。 [解決] FileMakerを使って特定のWebサイトにログインしたい - FMQ&A

Webビューアで行けるよ、ブラウザがいいよという話があった。

Webビューアで試す

まずWebビューア。

FileMaker 19の新機能「Web ビューアで JavaScript を実行」の使い方とインスペクタの活用方法 - frudens レイアウト上での Web ビューアの使用

これらを参考に実装。 ただ、Webビューアって微妙にブラウジング向けではない。色々探していたら下記のようなページがあった。

FileMaker Pro で Web ビューアを創造的に使用するための Tips

ブラウザ立ち上げ - AppleScriptからsafariJavaScriptを動かして操作する

Safariであらゆるページに自動ログインする方法

このページが参考になる。AppleScriptって勉強しにくすぎて今まで手を出してこなかったんだけど、JavaScriptがいじれるとなると便利そう。これで多分ログインはできる。問題はサーバに置いた時にどう動くかという話。

あと、実装してみたけど、AppleScript経由でやると処理がモサモサしてる。それにやっぱパスワードとかを生でFileMaker上で管理するってのがよろしくない。

結論 - URLでログイン画面を開いてあげる、でおしまい

URLから開くを使ってログインページを開き、あとはSafariのキーチェーンでログインさせる、で良さそうです。

参考

FileMaker 19の新機能「Web ビューアで JavaScript を実行」の使い方とインスペクタの活用方法 - frudens

FileMaker Pro で Web ビューアを創造的に使用するための Tips