go 有什么包可以直接让自己开发的 cli 直接读取用户浏览器的 cookie 吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
shelken
V2EX    Go 编程语言

go 有什么包可以直接让自己开发的 cli 直接读取用户浏览器 cookie 吗?

  •  
  •   shelken 2024 年 7 月 9 日 3408 次点击
    这是一个创建于 587 天前的主题,其中的信息可能已经有所发展或是发生改变。

    自己做个小工具,不想把登录获取凭证再做一套,想直接读取我已经登录账号的 chrome 上面的 cookie 。 有什么包可以直接用吗?

    第 1 条附言    2024 年 7 月 9 日
    目前找到的最简单可直接用的
    https://github.com/thewh1teagle/rookie
    可惜缺少 go 版本,不过支持挺多浏览器
    26 条回复    2024-07-10 17:37:20 +08:00
    ch3nOr
        1
    ch3nOr  
       2024 年 7 月 9 日
    做个浏览器插件,将 cookie 发送到你的程序上,这个思路怎么样
    shelken
        3
    shelken  
    OP
       2024 年 7 月 9 日
    @ch3nOr 那我不如直接把登录操作做了,成本太高,想要看有没有现成包直接用
    shelken
        4
    shelken  
    OP
       2024 年 7 月 9 日
    @leyoumake1997 ok ,我看看
    march1993
        5
    march1993  
       2024 年 7 月 9 日
    试试看 chromedp ?
    jiuzhougege
        6
    jiuzhougege  
       2024 年 7 月 9 日   1
    rust 有个 rookie 可以参考下源码
    guanzhangzhang
        7
    guanzhangzhang  
       2024 年 7 月 9 日   1
    go-rod 打开浏览器
    或者抓包下网页的扫码登录接口,我针对 a 站写了个 cli
    cli login 支持用户名和密码,-o 就是输出二维码,a 站 app 扫码 cli 获取 cookie ,然后存在~/.acfun/config 里插入
    除了 login 命令,全局有个--auth x 表明操作时候使用第几个账号
    drymonfidelia
        8
    drymonfidelia  
       2024 年 7 月 9 日
    参考 youtube-dl 虽然不是 go 写的
    maladaxia
        9
    maladaxia  
       2024 年 7 月 9 日
    proxytoworld
        10
    proxytoworld  
       2024 年 7 月 9 日
    可以获取浏览器存储的 cookie ,解密,有现成的
    shelken
        11
    shelken  
    OP
       2024 年 7 月 9 日 via iPhone
    @jiuzhougege 这个好,不过少了 go 版本,不过应该是最简单且现成可用的了
    shelken
        12
    shelken  
    OP
       2024 年 7 月 9 日 via iPhone
    @maladaxia
    @guanzhangzhang

    貌似 rod 还要开启浏览器开启调试啥的?目前找到最简单直接获取的一个库是 rookie
    maladaxia
        13
    maladaxia  
       2024 年 7 月 9 日
    @shelken 也许是直接从浏览器目录读的吧
    shelken
        14
    shelken  
    OP
       2024 年 7 月 9 日
    @maladaxia #13 是的
    3IOhG7M0knRu5UlC
        15
    3IOhG7M0knRu5UlC  
       2024 年 7 月 10 日 via Android
    @guanzhangzhang 终端显示二维码有比较好的方案吗
    mogita
        16
    mogita  
       2024 年 7 月 10 日   1
    nutting
        17
    nutting  
       2024 年 7 月 10 日
    网页上的 qq 单点登录,原理是不是 qq 客户端写入了 chrome 的 cookie ?
    shelken
        18
    shelken  
    OP
       2024 年 7 月 10 日
    @nutting 一般情况下只有在网页端登录然后授权到客户端,而没有从客户端登录授权回网页端的操作(据我所知)所以肯定也不是「 qq 客户端写入了 chrome 的 cookie 」
    guanzhangzhang
        19
    guanzhangzhang  
       2024 年 7 月 10 日   1
    @GooMS 我用的这个 github.com/skip2/go-qrcode ,windows git bash 里,和 ssh 的里都可以
    nutting
        20
    nutting  
       2024 年 7 月 10 日
    @shelken 我就发现 qq 有那个客户端开着,网页就能直接登录,一直不知道什么原理。感觉页面不能和 cs 客户端通信吧
    herbertzz
        21
    herbertzz  
       2024 年 7 月 10 日
    不知道 用 cookiecloud 插件, 再自部署个 cookiecloud 服务端 是否可行
    webbillion
        22
    webbillion  
       2024 年 7 月 10 日
    @nutting #20 这是因为客户端开了一个端口,网页可以通过这个端口来获取到已登录的信息
    kkk9
        23
    kkk9  
       2024 年 7 月 10 日   1
    @nutting 20 年前网吧很多盗号木马的原理都是从这里拿 skey ,你可以自己抓包试试看

    QQ 客户端本地监听了 4300-4308 端口,浏览器通过 HTTP 请求的方式,向本地 QQ 客户端发送请求,拿到了当前本地 QQ 客户端登录的账户信息
    域名 localhost.ptlogin2.qq.com 解析为 127.0.0.1
    https://localhost.ptlogin2.qq.com:4301/pt_get_uins?callback=ptui_getuins_CB&r=0.28636280100847933&pt_local_tk=xxx
    hackerwilson
        24
    hackerwilson  
       2024 年 7 月 10 日
    有点类似这个项目,不过是 Python 写的,可以照着写个 go 版本的?
    可以从浏览器扫码登录:

    https://github.com/Diaoxiaozhang/Ximalaya-Downloader
    timnottom
        25
    timnottom  
       2024 年 7 月 10 日
    同样,蹲一个
    zzhaolei
        26
    zzhaolei  
       2024 年 7 月 10 日
    kooky 和 rookie 很像啊
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1810 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 06:09 PVG 14:09 LAX 22:09 JFK 01:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86