Повторить команду Applescript для каждого элемента в списке. Каждая строка добавляется к команде как переменная - PullRequest
0 голосов
/ 02 августа 2020

У меня есть список заголовков mov ie, хранящийся в переменной movie_titles в AppleScript.

{"Beautiful Girl 2014
The Aerialist 2020
Yvonne Orji Momma I Made It 2020
Dead Stop 2011
"}

Мне нужно запустить команду для каждого заголовка в этом списке. Откройте URL-адрес, в котором каждый заголовок списка movie_titles является частью этого URL-адреса. Результатом является вкладка для каждого элемента в списке, открытом в моем браузере по умолчанию.

repeat with i in movie_titles
    do shell script "open 'http://www.imdb.com/find?ref_=nv_sr_fn&q= " & movie_titles & "&s=tt&ttype=ft'"
    
end repeat

Это работает для списка из одного, но добавляет каждую строку списка из более чем одного в URL. Я понимаю, что мне нужна вторая переменная, которая последовательно захватывает каждую строку и добавляет ее к каждому повторению, но я не уверен, как добавить это в оператор повторения.

Думаю, я не смог найти хороший пример потому что я не уверен, какие слова / фразу использовать. Если вы можете дать ответ и дать краткое объяснение, я был бы признателен.

1 Ответ

1 голос
/ 02 августа 2020

Вам необходимо разбить строку ввода по окончанию строки, чтобы создать элементы списка. Текстовые объекты AppleScript имеют элемент paragraphs, который использует возврат, перевод строки или возврат / перевод строки в качестве разделителей, поэтому вы можете сделать что-то вроде:

set movieTitles to "Beautiful Girl 2014
The Aerialist 2020
Yvonne Orji Momma I Made It 2020
Dead Stop 2011"

repeat with anItem in paragraphs of movieTitles
   if contents of anItem is not "" then -- skip blank lines
       do shell script "open 'http://www.imdb.com/find?ref_=nv_sr_fn&q=" & anItem & "&s=tt&ttype=ft'"
    end if
end repeat
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...