Автоматизатор: Використання Cmd F в режимі "спостерігати за тим" і намагатися приймати рішення на основі результатів


3

Використовуючи автоматизатор, я перейшов на веб-сайт, на якому потрібен пароль, перетягнув сторінку і мені потрібно пошукати слово на цій сторінці. Скажімо, наприклад, слово "flowmaster". Я мав Automator зробити "дивитися, як я роблю" і набрав Cmd-F для пошуку на цій сторінці. Я набираю flowmaster, і він повертається в командному рядку прожектора 0 збігів.

Скажімо, я хочу, щоб він продовжував повторно шукати сторінку, і коли слово "flowmaster" з'являється як збіг, надішліть мені електронний лист, щоб попередити мене про те, що воно знаходиться на сторінці. Коли у мене Автоматизатор "отримати текст із веб-сторінки" або "отримати вміст веб-сторінок", він просто повертає заголовок сторінки або початкову сторінку веб-сайту.

Щоб показати вам, що я намагаюся зробити, наберіть "команду F" зараз, а потім введіть "flowmaster", він повинен сказати ліворуч від пошуку прожектора 4 збігу та клавіші зі стрілками вліво / вправо. Це ті дані, які я шукаю. Чи є спосіб, щоб інформація про 1 матч викликала подію? Мовляв, якщо є одна відповідність, надішліть електронний лист із повідомленням "один доступний". Проблема "дивись на мене" полягає в тому, що більшість часу там нічого немає, але коли слово з’являється на веб-сайті, мені це потрібно, щоб сповістити мене.

Чи можливо це?

Відповіді:


1

Функції "Watch Me Do" "Автоматизатора" досить обмежені, як ви виявили. Крім того, імітація того, як користувач може щось робити, не завжди є найкращим способом автоматизації речей - наприклад, комп'ютеру не потрібно відкривати вікно браузера та використовувати панель пошуку для пошуку тексту веб-сторінки, Ви можете просто завантажити дані та пошукати їх, не потребуючи жодних приємностей GUI.

Автоматичне повідомлення електронної пошти для відповідності тексту на сайті

  1. Додайте дію Отримати вказані URL-адреси . Додайте до нього адресу сторінки, яку ви хочете перевірити.
  2. Додайте дію " Отримати текст із веб-сторінки" та переконайтесь, що для випадаючого меню встановлено звичайний текст .
  3. Додайте сценарій Run Shell Script із встановленою оболонкою /bin/bashта вводом для stdin . Введіть наступний текст, замінивши search termтекст, який ви хочете відповідати (не забудьте зберегти лапки, якщо в рядку є пробіли):

    grep -o "search term" | wc -l | tr -d " "
    

    Зауважте, що пошук відрізняється від регістру.

  4. Додайте дію Виконати AppleScript та вставте наступний текст, замінивши, me@example.comякщо це доречно:

    on run {input, parameters}
        if input > 0 then
            tell application "Mail"
                set theNewMessage to make new outgoing message with properties {subject:"Found Matches", content:"Found " & input & " matches", visible:false}
                tell theNewMessage
                    make new to recipient at end of to recipients with properties {address:"me@example.com"}
                    send
                end tell
            end tell
        end if
    end run
    

    Ви можете замінити subjectі content, але не забудьте правильно їх відформатувати як рядки AppleScript (я залишаю це як вправу для читача, це зрозуміти досить легко, якщо потрібно Google).

Це надішле електронний лист, якщо на сайті є відповідність для рядка. AppleScript використовується замість дій електронної пошти Automator, оскільки Automator не пропонує будь-яких умовних ( тобто, якщо висловлювань) засобів виконання дій, і ми хочемо надіслати електронний лист, лише якщо було знайдено збіг. Повідомте мене у коментарях, якщо у вас є якісь питання.


Роб, спасибі за відповідь, вибачте, що я трохи вийшов. Я спробував дії, запропоновані автоматом. Лише пара питань (вибачте, будь ласка, про моє незнання LINUX, я б ніколи не з'ясував греп фразу). Я щойно купив яблучний сценарій: відсутній посібник, щоб дізнатися, і моя спроба з автоматизатором використовує молоток, щоб повернути гайку. Я запустив робочий процес, однак сторінка, яку я шукаю, знаходиться насправді у кадрі, і текст тексту з веб-сторінки не повернув жодних результатів пошуку. Мене грубо змусило матикро, використовуючи "спостерігати за тим", щоб повернути результати, але я також не можу отримати результат.
Джон S

Я намагався використовувати Imacros для переходу на сторінку (після входу з іменем та паролем - що я можу грубо застосовувати за допомогою "спостерігати за тим"), однак на сторінці є декілька виділених підменю, такі як дата та меню, до яких я переходжу. , тоді подивіться, чи є там ключове слово. Я вважаю, що сайт знаходиться в JavaScript і Imacros може витягнути фразу, вибравши кадр і шукаючи ключове слово в цьому кадрі. Використовуючи отримання тексту з веб-сторінки, було повернуто лише пару заголовків меню, але не текст, який я шукав. Дякую, Джон С
Джон S

Отримання вмісту з динамічно створеного сайту може бути складним, якщо цей вміст недоступно доступний з певної URL-адреси (наприклад, як можна побудувати пошук Google за параметрами URL-адреси). Це можливо, але це дійсно виходить за рамки Automator або AppleScript. Зазвичай я використовую Python для чогось подібного. Однак це можуть бути лише кадри, які вас стимулюють; у такому випадку клацніть правою кнопкою миші на кадрі потрібний вміст і натисніть кнопку Відкрити кадр на новій вкладці та скопіюйте URL-адресу кадру звідти в дію Отримати текст із веб-сторінки.
robmathers

Гей, Роб, ще раз дякую за ваш внесок та терпіння. Мені вдалося частково запустити ваші ідеї. Клацнувши правою кнопкою миші кадр, я зберег його як файл HTML як джерело сторінки. Я використовував Finder в автоматизаторі, щоб обробити файл, використовуючи вашу греп-фразу для пошуку джерела за ключовим словом, а з цього, решта вашого коду працювала так, як мені надіслав електронну пошту. (гольф хлопа) Моє рішення трохи важке, проте, коли я спостерігав, як я роблю, щоб перейти на сайт, вибрати кадр, клацнути правою кнопкою миші та зберегти файл, а потім вибрати файл перезапис ... Я впевнений, що є спосіб заповісти, що, як би це не працювало, до пункту ...
Іоанн S

Добре Роб, оновлення, ви маєте рацію, кадри складні і навіть отримання Автоматизатора правою кнопкою миші виявилося важким. Я повинен був "спостерігати за тим, як я" записати правою кнопкою миші на сторінці, потім закінчив якийсь яблучний скрипт, щоб натиснути клавішу "s", щоб зберегти сторінку, а потім проаналізувати її за допомогою оболонки. Пізніше я виявив, що коли я перейшов на інший кадр на цій сторінці, він не буде копіювати нову інформацію, тому я змінив тактику. Я виявив, що вибравши новий кадр, потім команду-a та команду-c отримав В буфер обміну ВСЕ, включаючи нову інформацію. Я запустив вашу оболонку, щоб проаналізувати буфер обміну, і вона чудово працює!
Джон S
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.