V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Seulgi
V2EX  ›  macOS

分享自己开发的两个 alfred 工作流(短信验证码提取/阿里机器翻译)

  •  
  •   Seulgi · 2022-07-28 15:52:00 +08:00 · 2033 次点击
    这是一个创建于 856 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1. [短信验证码提取]( https://github.com/vincentXu97/alfred-workflow-message-code)
    提取最新 10 条包含验证码三个字的短信文本, 提取其中的验证码.回填回 alfred 候选项, 回车复制到粘贴板
    2. [阿里机器翻译(自用替代有道翻译)]( https://github.com/vincentXu97/alfred-workflow-translate-alimt)
    利用阿里机器翻译每月百万字符的免费白嫖. 因为只当一个翻译工具, 所以有道的其他诸如记词本之类的对我用处不大.加上没有白嫖额度.
    通过判断翻译文本是否包含中文字符, 如果有中文字符,则默认翻译为英文, 如果不包含则翻译为中文.
    12 条回复    2023-03-09 17:52:41 +08:00
    jheroy
        1
    jheroy  
       2022-07-28 16:38:26 +08:00
    短信验证码用 alfred 还是太麻烦了, 我目前是用 launchctl 监听短信文件夹, 如果有改动就自动调用脚本查看最近两分钟的短信如果有验证码就复制复制成功发个 notify.
    ```
    cat ~/Library/LaunchAgents/com.me.verifycode.plist
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Label</key>
    <string>com.me.verifycode</string>
    <key>ProgramArguments</key>
    <array>
    <string>bash</string>
    <string>/Users/xxx/Library/LaunchAgents/verifycode.sh</string>
    </array>
    <key>WatchPaths</key>
    <array>
    <string>/Users/xxx/Library/Messages/</string>
    </array>
    </dict>
    </plist>
    ```
    Seulgi
        2
    Seulgi  
    OP
       2022-07-28 16:48:27 +08:00
    @jheroy 可以分享一下. applescript 没怎么研究. 你这个确实是最佳的.有新验证码短信自动复制给个提示, 直接 command v 就行
    missqso
        3
    missqso  
       2022-07-28 16:50:12 +08:00   ❤️ 1
    https://github.com/DreamSaddle/MacCopier
    昨天看到的一个软件
    MacCopier 是一个提供在 Macos 中收到短信验证码后自动复制到剪贴板功能的软件。
    jheroy
        4
    jheroy  
       2022-07-28 16:51:52 +08:00
    shell 就用的之前站里面有个老哥用的脚本稍微修改了一点点.
    ```
    echo "starting to check code"
    # 路径中的 dufu 记得改成自己电脑的名字
    # 通过 Sqlite3 查 1 条 iMessage 最近 60 秒收到消息( iMessage 收到消息的时间可能有延迟,这里实际冗余多了 2 秒)
    #! /Users/dufu/Library/Messages/chat.db
    #!这个 DB 文件和目录记得给开权限,默认是不给读的。
    result=$(sqlite3 /Users/xxx/Library/Messages/chat.db 'SELECT text FROM message WHERE datetime(date/1000000000 + 978307200,"unixepoch","localtime") > datetime("now","localtime","-100 second") ORDER BY date DESC LIMIT 1;')

    # echo $result >> /tmp/t.log

    name="验证码";

    # 看下最近有没有收到消息
    if [ ! $result ]; then
    echo "latest not receive code messsages";
    # osascript -e "display notification \"最近 60 秒未收到验证码!\" with title \"提示\" ";
    return
    fi

    # 如果短信中包含验证码则取前 4-6 个数字
    if [[ "$result" =~ "$name" ]] || [[ "$result" =~ "Verification" ]]; then
    code=`echo $result | grep -o "[0-9]\{4,6\}"`;
    echo "code is $code";
    # 将获取到的数字输出到剪贴板
    echo "$code" | pbcopy;

    # 发个系统通知,展示内容,同时提醒你可以 Command + v 粘贴了。
    osascript -e "display notification \"$code\" with title \"验证码已复制\"";
    fi
    ```
    jheroy
        5
    jheroy  
       2022-07-28 16:55:06 +08:00
    @missqso 之前用过, 不过不知道为啥在我 M1air 上不好使, 而且还需要短信访问权限, 还是自己写的脚本放心.
    Seulgi
        6
    Seulgi  
    OP
       2022-07-28 17:04:48 +08:00
    @missqso 可以. 这个不错.
    Seulgi
        7
    Seulgi  
    OP
       2022-07-28 17:05:16 +08:00
    还是吧里老哥们强
    QurakJaker
        8
    QurakJaker  
       2022-07-28 21:15:16 +08:00
    短信验证码用的这个: https://github.com/squatto/alfred-imessage-2fa/
    翻译用 bob
    Seulgi
        9
    Seulgi  
    OP
       2022-07-29 09:57:47 +08:00
    @QurakJaker 短信验证码那个我发现了的, 但是因为不支持 4 位之类的问题. 而且我不想装 php 哈哈.
    翻译我也用 bob. 实际上 idea 里翻译我用插件的 translate 比用 bob 更方便.
    arare
        10
    arare  
       2022-08-04 17:49:10 +08:00
    感谢,很好用~
    caonuan
        11
    caonuan  
       2023-03-09 16:03:09 +08:00
    @jheroy launchctl 没办法绑定用户,pbcopy 和 osascript 都执行不了,大佬怎么解决的?
    jheroy
        12
    jheroy  
       2023-03-09 17:52:41 +08:00
    @caonuan launchctl 配置放在~/Library/LaunchAgents 下就和用户相关, pbcopy 和 osascript 执行不了是什么表现.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2696 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 15:10 · PVG 23:10 · LAX 07:10 · JFK 10:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.