Alfred WorkFlow 编写

560 阅读2分钟

官方tutorials

www.deanishe.net/alfred-work…

www.deanishe.net/alfred-work…

我心血来潮想钻研一下alfred workflow的编写,主要是因为最近用到了一些web相关的workflow(可以帮你获取某些网站上的信息,显示在alfred里面)。感觉这样的workflow不是一般的方便,减少了很多烦人的“键鼠切换”。

最近花了一些时间看了下相关workflow的实现,开始觉得非常复杂,但是后来从模拟的角度想了下,其实这类web workflow的流程还是非常清晰的。

第一步一般都是获取身份(可能是需要模拟登录一下,也可能只要拿一下UID就行),获取身份之后才可以做后面的所有操作

第二步是命令解析,对于功能比较全的web workflow,可能会有一个命令的parser

第三步就是请求,获取数据,然后展示在alfred中

之前觉得干这样一件事是成本很低的一件事,后来发现其实不然。在这三步里面其实主要干活的部分是最好实现的(第二步和第三步),抓一下请求时候的包看一下就好,照葫芦画瓢造一个请求就可以了。

成本最高的其实是第一步,想要摸清楚一个网站的登录系统还是比较难的。(当然可能是我对登录系统没有什么深入研究,导致我这块直接就抓瞎了,看啥都是哇塞)而且现在做的各种人机验证等等等等,让模拟登录成为这整个流程中最大的难点。有的时候可以退而求其次,把一些登录的凭证给copy到workflow的配置里面来跳过第一步,但是这种保存在本地的配置总归是会过期的,过一段时间之后需要手动去更新,有点恶心。

这个坑等我再详细研究一下登录系统再回来填吧。。。