applescript在youtube中打开谷歌搜索查询

时间:2013-10-13 16:34:09

标签: applescript

我正在使用下面的代码在AppleScript中使用google查询打开youtube,因为新的google不会将我的搜索字符串带到youtube。无法在firefix中使用google搜索字符串打开url。我非常感谢任何帮助。谢谢。

我在这里收到错误:

tell application "Firefox" to activate
tell application "System Events"
    keystroke "l" using command down
    keystroke "c" using command down

    set tr to get the clipboard


end tell



return trimgoogle(tr)
on trimgoogle(sourceAddress)
    set AppleScript's text item delimiters to {"#"}
    set addressParts to (every text item in sourceAddress) as list
    set AppleScript's text item delimiters to ""
    set nameOnly to item 2 of addressParts

    set AppleScript's text item delimiters to {"&"}
    set addressParts2 to (every text item in nameOnly) as list
    set AppleScript's text item delimiters to ""
    set nameOnly1 to item 1 of addressParts2
    set nameOnly2 to nameOnly1


    set AppleScript's text item delimiters to {"="}
    set addressParts21 to (every text item in nameOnly2) as list
    set AppleScript's text item delimiters to ""
    set nameOnly12 to item 2 of addressParts21


    set newurl to "http://www.youtube.com/results?search_query=" & nameOnly12

    return newurl

end trimgoogle

tell application "Firefox"
OpenURL  newurl
end tell

1 个答案:

答案 0 :(得分:1)

试试这个:

tell application "Firefox"
    open location newurl
end tell

编辑:

Firefox不会自动激活,所以我只是尝试了这个:

tell application "Firefox"
    activate
    open location "http://www.wikipedia.com/"
end tell

在这里有用。

这里有关于编码文本的更多信息: http://www.macosxautomation.com/applescript/sbrt/sbrt-08.html

EDIT2: 好的,我明白你的意思了,就这样解决了:

tell application "Firefox" to activate
tell application "System Events"
    keystroke "l" using command down
    keystroke "c" using command down
    set tr to get the clipboard
end tell

set newurl to my trimgoogle(tr)

tell application "Firefox"
    activate
    open location newurl
end tell

on trimgoogle(sourceAddress)
    set AppleScript's text item delimiters to {"#"}
    set addressParts to (every text item in sourceAddress) as list
    set AppleScript's text item delimiters to ""
    set nameOnly to item 2 of addressParts

    set AppleScript's text item delimiters to {"&"}
    set addressParts2 to (every text item in nameOnly) as list
    set AppleScript's text item delimiters to ""
    set nameOnly1 to item 1 of addressParts2
    set nameOnly2 to nameOnly1

    set AppleScript's text item delimiters to {"="}
    set addressParts21 to (every text item in nameOnly2) as list
    set AppleScript's text item delimiters to ""
    set nameOnly12 to item 2 of addressParts21

    set newurl to "http://www.youtube.com/results?search_query=" & nameOnly12

    return newurl

end trimgoogle