我想使用Python和appscript将给定的Google标签设置为最重要的标签。我可以这样获得标签:
from appscript import *
chrome = app('Google Chrome')
tab_title = 'New York Times'
win_tabs = []
for win in chrome.windows.get():
win_tabs.append([])
tnames = map(lambda x: x.title(), win.tabs())
rel_t = [t for t in win.tabs() if tab_title in t.title()]
if len(rel_t):
rel_t = rel_t[0]
break
现在,我想将该标签设置为最前面的窗口。有任何想法吗?我怀疑我必须使用像
这样的东西se = app('System Events')
从那里管理事情,但我不知道。
答案 0 :(得分:0)
您可以使用win.active_tab_index.set(number)
更改有效标签。不需要系统事件。但是tab
对象没有引用它自己的索引,所以将它改为this(编辑:重写以避免错误)
def activate_chrome_tab(title):
for window in chrome.windows.get():
for index, tab in enumerate(window.tabs()):
if title in tab.title():
window.active_tab_index.set(index + 1)
window.activate()
window.index.set(1)
return
activate_chrome_tab(tab_title)
(如果有多个窗口具有相同的标签名称,它将依次关注每个窗口 - 这就是原始的
(资料来源:Chrome applescript dictionary) (但请注意appscript is not maintained)