度々、失礼致します。
1)AppleScriptのSafari.app用のコマンドでJavaScriptを実行できます。 このコマンドを使った、一つの方法を考えてみました。 このスクリプトは、
底打ちの7-9月期「増収増益」銘柄リスト 35社選出
のWebページを対象にしています。 Safari.appでこのページを表示した状態でAppleScriptを実行するとクリップボードにTSV形式でデータが入りますので、それをNumbers.appにペーストします。 実行するには、Safari.appの環境設定>詳細で、デヴェロッパメニューを表示するにチェックを入れて、メニューの『Apple EventsからのJavaScriptを許可』の項目にチェックを入れておきます。
処理の考え方としては、まず、取り出したいデータの部分のHTMLのエレメントのクラス属性?がmonoという名前だったので、その部分を切り出して、テキストを抽出しています。 次に、” コード 銘柄名”から、”*売上高”の文字列の前の部分までを取り出し、スペース(半角と全角)の連続をタブに置き換えています。 行頭のスペースを取り除きたかったのですが、私の知識では無理でした。 なお、このような処理の性質上、他のページで実行してもデータを取り出せないと思います。
tell document 1 of application "Safari"
activate
set theScript to "var theMono=document.getElementsByClassName('mono');
var str=theMono[0].textContent;
var sbstr=str.substring(str.indexOf(' コード 銘柄名'),str.indexOf('※売上高')-2);
sbstr.replace(/[ ]+/g, ' ')"
set theText to do JavaScripttheScript
set the clipboard totheText
end tell
(Script Editor.appの新規書類に上記のAppleScriptをコピペして実行ボタンを押します。スクリプトの実行はスクリプトメニューやAutomator.appのサービスなどを使うとより簡単に実行できます)
2)表タグを使ったWeb Pageの表からデータを取り出してクリップボードへコピーする試みについては、中途半端な状態ですが、こちらのスレッドを参考にして見て下さい。
→ Re: numbersでエクセルのwebクエリのような機能はありますか?
3)1)の方法では、コードの文字列のリンクが取り除かれてしまいます。 リンクを取り入れる場合は、他の方法(AppleScriptObjCなど)も可能だと思います。 色々な方法があるとは思いますが、参考になれば幸いです。
サポートコミュニティーの皆様、他にも良いアイディアがありましたら、ご教授下さい。 宜しくお願い申し上げます。