Chrome 右键翻译,怎么 fix?

2022-10-23 15:56:35 +08:00
 JinTianYi456
// 我的 pac 文件内容
function FindProxyForURL(url, host) {
    if (host == "translate.googleapis.com") {
        return "HTTP <IP>:<端口>";
    }

    return "DIRECT";
}

// 甚至,我把 SwitchyOmega 里的导出为 pac 来试,也不行
14721 次点击
所在节点    Google
90 条回复
owtotwo
2022-10-23 17:40:13 +08:00
提个醒,每次尝试记得先重启 Chrome 再测试,不然有可能有缓存或残留的连接影响测试结果
(打开 chrome://net-internals/#sockets 然后 Close idle sockets 似乎也行)
JinTianYi456
2022-10-23 17:41:27 +08:00
@eason1874 #20 这样吗?算了,用 hosts 搞定了,下次再玩 PAC 吧。chrome://net-internals/#proxy 这里是不是可以清楚 proxy-cache?
wym0823
2022-10-23 18:02:42 +08:00
修改 hosts ,ip 换成可用的国外谷歌服务器 ip
XIU2
2022-10-23 18:06:27 +08:00
@cnfzv 可是我看 Chrome 浏览器直连访问了 Hosts 中指定的 IP ,而只可能是通过 translate. googleapis. com 域名,因为我只指定了这一个域名,其他域名不可能解析到这个 IP 的。

我用本地 DNS 程序记录了解析请求(重启了浏览器+刷新 DNS 缓存),也确实没见到其他域名。。。
followztx
2022-10-23 18:06:51 +08:00
1 、代理客户端比如 ssr,默认用的 pac 模式,但是 gfwlist 列表里面把 translate.googleapis.com 排除了(直连),用户自定义里面添加一条*.translate.googleapis.com,让它走代理
2 、浏览器代理扩展里面,如果也是用 gwflist ,也得手动添加*.translate.googleapis.com 让它走代理

原因:右键整个网页翻译,部分流量走系统代理(走了代理客户端的 pac,这个 pac 得添加 translate.googleapis.com),另外一部分走浏览器扩展(浏览器扩展里面的 pac 也得添加 translate.googleapis.com
charlie21
2022-10-23 18:18:45 +08:00
chrome 彩云小译扩展
followztx
2022-10-23 18:44:42 +08:00
翻译的还不错
treblex
2022-10-23 20:40:25 +08:00
装完浏览器第一次需要系统代理,之后好像就可以走扩展了
qiaobeier
2022-10-23 21:07:22 +08:00
换“划词翻译”使用 deepl ,服务器有点慢,但翻译质量比 google 好一点。
Minden
2022-10-23 21:11:11 +08:00
右键翻译走系统代理,我也是习惯用 SwitchyOmega ,这样将需要走代理的域名可以很方便地临时控制。我现在是加一层 Proxifier 走系统代理,只添加需要的软件和域名,这样就完成了,完全不影响之前的配置。
D15nBByN
2022-10-23 21:12:12 +08:00
Chrome 加--proxy-server=启动参数,有路由分流需求的话放在浏览器外面做
iv2usr
2022-10-23 21:14:24 +08:00
一劳永逸的办法: 路由器透明代理
ClericPy
2022-10-23 21:16:57 +08:00
你们折腾不明白的不会来 V2EX 搜一搜么, 方法很多了

右键里的似乎不走代理扩展, 以前还行现在不好使了, 如果懒得搜, 装了划词翻译的可以在设置里面找到通知:

关于谷歌翻译出现报错的说明
https://hcfy.app/blog/2022/09/28/ggg

一大串 hosts 复制过去吧
AaronLee
2022-10-23 21:20:11 +08:00
有个临时解决方法,我也是刚刚在知乎看的,操作系统先设置全局,打开 Chrome ,随便翻译一个网页,接着再取消全局代理,之后就可以正常使用翻译了,只是有个缺点,Chrome 不能关闭,否则要重新这样做一遍。
知乎链接:[「技巧」 Chrome 浏览器自带 谷歌翻译 失效的最新解决方法之一:重定向( 10 月 22 日)]( https://zhuanlan.zhihu.com/p/576290326#:~:text=C%E6%9F%90%E6%9F%90-,%E9%87%8D%E5%AE%9A%E5%90%91%E6%98%AF%E7%9C%9F%E7%9A%84%E5%A5%87%E6%8A%80%E6%B7%AB%E5%B7%A7,-%E3%80%82%E6%88%91%E7%9A%84%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88)
Eagleyes
2022-10-23 23:05:40 +08:00
SwitchyOmega 添加这条规则并使用

https://ipac.now.sh/
haixin
2022-10-23 23:18:27 +08:00
分流,DOMAIN-KEYWORD,google,proxy
explore365
2022-10-23 23:28:30 +08:00
XIU2
2022-10-23 23:51:35 +08:00
@AaronLee 嗯,这篇就是我写的文章,不过很奇怪的是有人行有人不行,把我也搞懵了。。。
于是我今天研究了半天,结论就是上面我发的内容(即整个翻译流程,一部分流量强制直连,一部分流量可以走代理)。关于你提到的这个,我也注意到了,我个人粗略的解释为:

Chrome 浏览器第一次翻译时:

1. Chrome 强制直连访问 translate. googleapis. com 获取了什么(即不受代理管理扩展控制)
2. 加载了几个翻译所需的静态文件( CSS 、JS 啥的)
3. 刚刚加载并运行的 element_main.js 脚本发起 POST 翻译请求
4. 处理翻译结果,修改网站内容

而后续再次翻译时,也只需要从步骤 2 开始,而因为 JS 等文件都被缓存了,所以相当于从步骤 3 开始了,直接由 JS 文件发起 POST 翻译请求即可(即相当于跳过了 1~2 步骤)。

这个第 1 条步骤,我也只是猜测,因为我只能通过实验判断翻译时,Chrome 直连访问了 Hosts 中指向的谷歌国外 IP ,以及 Chrome 访问了代理,但具体是什么我就不知道了。。。

折腾研究半天,给我搞晕了、烦了,本来是想研究下看看能不能找到完美解决方案写个适合大众的低门槛教程,结果最后也只得出这一堆模棱两可的答案。。。
Lightbright
2022-10-24 00:57:24 +08:00
要用系统代理,且不能是 pac
abolast
2022-10-24 01:10:06 +08:00
最后我选择在 chrome 的启动参数添加 --proxy-server=http://127.0.0.1:20172 ,SwitchyOmega 插件也不用了,第三方网页翻译插件总是有点问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/889119

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX