前提・実現したいこと
恐れ入ります。
現在、AppleScriptにて下記のようなコードにチャレンジしています。
①ページ内に掲載されているリンクURLを取得
②取得したリンクURLにフィルタをかけてリスト化(アドセンスなど余計なリンクを取り除く)
③リストにはURLではなくアンカーテキストで表示させる(リストの中からページを選ぶ時にURLで表示されるとページの内容がわかりづらい)
④リストから選んだ順番でページを切り替える
このうち④は実現できたのですが、①②③を実現することができません。
不勉強で恐縮ですが、お知恵を拝借願えませんでしょうか?
お心当たりのある方、ご意見やご指摘、ご提案をお待ちしております。
参考までに、作成中のコードを以下に掲載させていただきます。
該当のソースコード
AppleScript
1set theUrlList to {} 2set i to 0 3try 4 repeat 5 set i to i + 1 as string 6 set theText to i & "件目のURLをコピーしてください。" 7 tell application "Google Chrome" 8 activate 9 end tell 10 tell application "System Events" 11 display dialog theText 12 end tell 13 set theUrlList to theUrlList & (the clipboard) 14 activate 15 display dialog "繰り返しますか?" buttons {"いいえ", "はい"} default button "はい" 16 if button returned of result = "いいえ" then exit repeat 17 --リンクURLを一回ずつコピーしなければならないのが手間、ページ内のリンクURLを一括取得したい―― 18 --リンクURLを一括取得すると、アドセンスなどの余計なリンクも含まれる。フィルタをかけたい―― 19 --リストの中からページを選ぶ時にURLで表示されるとページの内容がわかりづらい、アンカーテキストで表示させたい―― 20 end repeat 21end try 22set counttheUrlList to count theUrlList 23tell application "Google Chrome" 24 set theWindow to (make new window) 25 tell theWindow 26 repeat with i from 1 to counttheUrlList 27 set URL of active tab to (item i of theUrlList) 28 tell application "System Events" 29 with timeout of (1 * 60 * 60) seconds 30 delay 5 31 display dialog "次のページに進みますか?" buttons {"いいえ", "はい"} default button "はい" 32 --画面中央に表示されて邪魔-- 33 if button returned of result = "いいえ" then exit repeat 34 end timeout 35 end tell 36 end repeat 37 close theWindow 38 activate 39 display dialog "終了しました" 40 end tell 41end tell
試したこと
- Automatorの「リンクURLを取得」「URLにフィルタを適用」だと、ページ内のリンクURLの一括取得は可能だが、フィルタ項目に「〜を含まない」がないため、余計なリンクURLを取り除くことができない(「完全なURL」以外では不明)
- Google Chromeのview sourceコマンドと、select allコマンドから、AppleScriptのtext item delimiters of AppleScriptの検索を利用してリンクURLを抜き出せないかと考えたが、不勉強のためコードで再現することができない
### まとめ・知りたい方法
①ページ内に掲載されているリンクURLを取得する方法
②取得したリンクURLにフィルタをかけて、条件に適合したURLのみをリスト化する方法
③リストを表示する時に、URLではなくアンカーテキストで表示させる方法
補足情報(FW/ツールのバージョンなど)
OS:macOS High Sierra バージョン10.13.6
モデル:iMac (21.5-inch, Mid 2011)
プロセッサ:2.5 GHz Intel Core i5
メモリ:4 GB 1333 MHz DDR3
スクリプトエディタ バージョン2.10
Automator バージョン2.8
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/20 01:18
2018/11/20 01:21
2018/11/20 01:56
2018/11/23 04:41