Сбежать
Здравствуйте, это очень конкретный и ситуационный вопрос. По сути, я запускаю Applescript в Automator в Safari, и в результате получается Null.
Что у меня есть
В настоящее время у меня есть скрипт, который может делать следующие вещи:
Еще до того, как я запустил программу Automator, у меня открылся Safari.
Затем я запускаю Automator, который начинается с этого кода:
on run {input, parameters} tell application "Safari" to activate tell application "System Events" keystroke "t" using command down end tell return input end run
Этот скрипт активирует Safari и откроет новую вкладку.
Далее у меня автоматическая пауза. Это даст время загрузки страницы
После того, как страница Safari открылась, я запускаю этот код:
on run clickID("75610556") end run on clickID(theId) tell application "Safari" do JavaScript "document.getElementById(‘” & theId & “‘).click();" in document 1 end tell end clickID
Этот скрипт должен был выбрать кнопку с идентификатором "75610556", но этого не произошло. Это ключевая проблема моей программы.
Далее я запускаю следующий код:
on run {input, parameters} tell application "Safari" to activate tell application "System Events" keystroke "w" using command down end tell return input end run
Это закрывает текущую вкладку.
Затем я прохожу через цикл Automator.
В чем мне нужна помощь
Я буду решать свои вопросы по программе шаг за шагом.
Для первого шага, это хороший способ настроить вещи? Является ли Automator правильным путем?
Эффективен ли этот код? Есть еще ошибки?
Я очень надеюсь, что есть альтернатива этому. Я не нашел ни одного.
Почему это не работает в Safari? Я чувствую, что сделал это правильно.
То же, что и номер 2, просто любопытно, лучший ли это способ справиться с этим
Я думаю, что это хороший способ делать вещи.
Зачем мне это нужно + каждая деталь (необязательный раздел)
Это дополнительные детали, если они вам нужны. Он даст вам почти все детали и объяснит, зачем мне это нужно.
Итак, в моем колледже проходит бизнес-конкурс. Я начинающий программист и написал очень простую мобильную сетевую игру. Проблема в том, что на сайте опроса есть денежный приз в размере 3000 долларов. Этот сайт - Опрос Везде. Судьи не понимали, что этот веб-сайт ни в малейшей степени не является безопасным. Мы сообщили об этом, и судьи сочли, что это недостаточная причина для отмены опроса и, возможно, поиска новой альтернативы. Мы сообщили, что Poll Everywhere можно манипулировать, чтобы получить преимущество любой команды, которая была достаточно умна, чтобы:
А. Отключить файлы cookie для своего браузера
Б. Используйте частный браузер
Но, конечно, судьи не послушались. Они думали, что если кто-то не спал всю ночь, это может изменить ситуацию, но в течение 2-3 часов это мало что даст. Чтобы воспрепятствовать их решению, я хотел бы сделать для них пример программы на моем Mac, которая поразит их ум: программа для голосования. Эта программа откроет сафари. Safari уже настроен на открытие страницы голосования в режиме приватного браузера. Все, что нужно сделать моей программе, это открыть новую вкладку, найти идентификатор кнопки и нажать на нее. Чем быстрее он это сделает, тем лучше.
- Последнее замечание: не слишком ли много предыстории? Я знаю, что при переполнении стека действует политика «сохранения деталей». Я думал, что сложная версия может помочь, но если это плохо, я удалю ее.