V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Get Google Chrome
Vimium · 在 Chrome 里使用 vim 快捷键
namesc
V2EX  ›  Chrome

应 V2EX 老哥请求做了划词右键小窗搜索 Chrome 扩展

  •  4
     
  •   namesc · 2019-01-31 09:31:48 +08:00 · 5549 次点击
    这是一个创建于 2121 天前的主题,其中的信息可能已经有所发展或是发生改变。
    昨天看到 @CivAx 的帖子“有没有什么 Chrome 插件,可以实现划词翻译类似的划词搜索?”
    链接: https://www.v2ex.com/t/531800

    然后我就做了一个扩展,简单来说就是当你划词选中文本时,点击右键里的扩展菜单,就会在网页内插入一个 iframe 通过百度搜索移动版搜索选中文本。(其他搜索引擎没有合适的)

    窗口头部底部蓝色区域按住可以拖到到网页中的任意位置,双击可以关闭窗口,窗口头部有几个搜索引擎的链接,点击即可在新窗口打开搜索选中文本的链接。

    效果如下:



    已经发布到 Chrome 应用店了,链接如下:
    https://chrome.google.com/webstore/detail/fgmknallmmochhfngjmmmcpobelihfhe


    我写好后自己试用了下,发现实用性比我想象中的要高,如果有好的搜索引擎的话,这个扩展真是挺不错的。考虑用谷歌,但谷歌不能内嵌,暂时没有找到解决办法。

    还有一个问题是比较麻烦的,有的网站限制了 iframe src 源,比如知乎,不允许 iframe 百度的网址,那这个扩展在知乎就用不了了,目前考虑是把知乎的换成知乎内部搜索。

    也考虑通过云函数处理搜索结果(云函数免费额度不用白不用),通过 API 方式调用,这样就能用任何搜索引擎了,但是工作量会比较大,先用一段时间看看有没有这个必要吧。

    欢迎大家试用,有建议的在 Chrome 应用店反馈或者在这里回复。如果有其他的扩展需求,也可以说下,工作量不大的我考虑做一个,过年估计有挺多时间折腾这些小玩意。
    第 1 条附言  ·  2019-02-06 17:44:35 +08:00

    新版开发好了,回复里说的功能基本都实现了,发布到 Chrome Web Store 提示说要深入审核。

    由于存在以下问题,您的扩展程序可能必须接受深入审核:

    宽泛的主机权限

    除了请求宽泛的主机权限或 content script 网站匹配项之外,您也可考虑指定您的扩展程序需要访问的网站,或者使用 activeTab 权限。相较于针对数量不定的网站授予完整访问权限,这两种方法不仅更安全,还可能有助于最大限度地缩减审核用时。

    我想着审核应该也用不了多久吧,就点了确定发布,没想到确定之后才提示说要几个工作日,而且,就算是取消发布了也一样要等待完成才能继续发布新版本,真是醉了。

    等商店版本更新大家再试用吧,没办法了。

    我明天把代码发到 Github 上再来发新贴。

    然后研究下怎么将各搜索引擎搜索结果处理返回。

    第 2 条附言  ·  2019-02-10 15:37:54 +08:00

    代码上传到 Github 了,具体看帖子:

    链接 → 开工大吉!全新 Chrome 划词小窗搜索扩展代码上线!

    51 条回复    2024-01-04 10:00:58 +08:00
    zllmath
        1
    zllmath  
       2019-01-31 09:43:42 +08:00   ❤️ 6
    赞,老哥动手能力强
    Hypn0s
        2
    Hypn0s  
       2019-01-31 09:45:50 +08:00 via Android
    厉害了鸭,资池
    zhttty
        3
    zhttty  
       2019-01-31 09:51:07 +08:00
    提个小小的建议,小窗里边文字和图片能不能等比例缩小,最好可以选择比例那种?
    CivAx
        4
    CivAx  
       2019-01-31 09:52:35 +08:00
    牛逼!!!!(破音

    老哥居然也是广州的

    目前实现效果已经趋于我想象中的完美插件了,但是有几个得寸进尺的小建议

    有没有办法实现 “点击页面空白处自动关闭窗口” 或类似的效果?这样可以省掉点×的功夫了(懒

    弹出搜索框后里面的内容字体感觉有点过大了,这个能够调整吗?

    小窗出现和消失的样式能否参考一下 Qikipedia 的代码,感觉有个缩放看起来会更舒服些

    关于 Google 移动版的问题我的帖子里有人建议说指定 UA,这个可不可行呢?其实纯文字版的 Google 也能接受(

    有空留个 Alipay,我觉得这个必须值得一杯星巴克
    duvalier
        5
    duvalier  
       2019-01-31 09:53:45 +08:00 via iPhone
    可以可以,v 友真是动手能力极强。
    unco020511
        6
    unco020511  
       2019-01-31 09:55:57 +08:00
    希望能云端处理,这样可以各种搜索切换
    IsaacYoung
        7
    IsaacYoung  
       2019-01-31 09:56:23 +08:00 via iPhone
    支持
    zijieq
        8
    zijieq  
       2019-01-31 10:00:30 +08:00
    执行力真强
    AzadCypress
        9
    AzadCypress  
       2019-01-31 10:01:32 +08:00
    nb,老哥执行力好强啊
    Stan30
        10
    Stan30  
       2019-01-31 10:10:41 +08:00
    sundae91
        11
    sundae91  
       2019-01-31 10:27:42 +08:00
    之前写过一个其他插件,想发布到 chrome 商店,不过开发者帐号一直没注册成功。。。
    求问 lz 如何注册。。
    oul
        12
    oul  
       2019-01-31 10:30:07 +08:00
    赞一个
    qooweds
        13
    qooweds  
       2019-01-31 10:30:57 +08:00
    原帖楼主快来付费了
    :)
    namesc
        14
    namesc  
    OP
       2019-01-31 10:37:51 +08:00   ❤️ 3
    @zhttty
    @CivAx
    @unco020511

    用 iframe 内嵌解决不了字体大小这些内容排版问题,得有数据接口然后自己排版才可以,在云端处理搜索结果再返回就可以。

    没考虑云端处理是因为扩展是公开的,万一被大量使用,那我可就是给自己写了一个扔钱扩展。由用户自愿提供服务器公共使用这个做法考虑了一下,不敢用,怕投毒。

    不过我想到一个折中方案了,我先把云端处理代码写出来发布到 Github,然后在扩展留一个写服务器地址的设置,要自定义搜索的,可以自己拿代码去服务器配置好了,把服务器地址填到扩展设置里,自己用自己的。然后再看看是不是通过赞赏或者什么方式搞个公共服务器。

    现在小窗不能点击网页空白处关闭,是因为我考虑小窗是常驻网页侧边栏,网页内容和小窗对比着看,而不是点了就看,看了就关,后面加个设置点击空白处关闭吧。

    我最近没什么事,就这两天,我加上云端功能,更新好,再来发个帖子。
    brandon911
        15
    brandon911  
       2019-01-31 10:39:54 +08:00
    🐮🍺
    namesc
        16
    namesc  
    OP
       2019-01-31 10:41:41 +08:00
    多谢各位老哥夸奖了,我就不一一回复了。欢迎提各种关于扩展的想法,我发现写 Chrome 扩展真是比写 PHP 要有意思得多。
    namesc
        17
    namesc  
    OP
       2019-01-31 10:43:30 +08:00
    @sundae91 #11 注册不难吧,就是要钱,我是几年前注册的,花了 5 刀还是多少。
    iFlicker
        18
    iFlicker  
       2019-01-31 10:46:02 +08:00
    呀 实用! 赞一个👍
    keith1126
        19
    keith1126  
       2019-01-31 10:48:11 +08:00
    赞一个,楼主动手能力真强
    vowers
        20
    vowers  
       2019-01-31 10:51:05 +08:00
    nb 啊 ,厉害了 这个可真的挺方便的
    AslanFong
        21
    AslanFong  
       2019-01-31 11:01:06 +08:00
    6666666 支持了
    wangchonglie
        22
    wangchonglie  
       2019-01-31 11:40:06 +08:00
    @CivAx #4 点击页面空白处自动关闭窗口+1
    Yiki
        23
    Yiki  
       2019-01-31 12:27:23 +08:00
    好棒啊~
    nightl2018
        24
    nightl2018  
       2019-01-31 13:47:58 +08:00
    🐂🍺 楼主一天肝出高达
    Stan30
        25
    Stan30  
       2019-01-31 14:02:02 +08:00
    可不可以跟划词翻译一样,直接划词就出小窗,并不需要右键再选择用小窗搜索
    CivAx
        26
    CivAx  
       2019-01-31 14:12:36 +08:00
    @Stan30 #25 这样可能会跟其他需要监听 “选中” 动作的插件相冲突…

    不过能加个开关提供自由选择也是挺好的
    piqizhu
        27
    piqizhu  
       2019-01-31 16:22:11 +08:00
    感谢分享, 请问提交插件到 chrome 浏览器市场 需要给钱吗
    pwxcoo
        28
    pwxcoo  
       2019-01-31 16:39:43 +08:00 via iPhone
    要开放一下源码吗,想给自己定制一个的说
    namesc
        29
    namesc  
    OP
       2019-01-31 16:51:37 +08:00
    @Stan30 #25 安排上了,加选项。

    @piqizhu #27 发布插件不用钱,认证开发者账号要钱,好像是 5 刀,不太确定。

    @pwxcoo #28 晚两天发下个版本就发到 Github,到时候会链接上来,欢迎贡献。不过就算不发你也能下载到的,搜 chrome extension download 下载 crx 文件然后转 zip 解压就是源代码了,任何扩展都可以下载。
    pengfei
        30
    pengfei  
       2019-01-31 17:08:45 +08:00
    老哥 能不能自定义添加网址 或者直接加上 类似 http://dict.cn/ 的翻译网站
    iawes
        31
    iawes  
       2019-01-31 17:58:05 +08:00
    划词翻译较好
    iamsea
        32
    iamsea  
       2019-01-31 18:05:01 +08:00
    搜索引擎支持一下 google 就更不错了
    iAndychan
        33
    iAndychan  
       2019-01-31 20:19:50 +08:00
    楼主的也不错,已安装。
    哈哈哈😂,推荐一个 Chrome 扩展,沙拉查词,https://chrome.google.com/webstore/detail/cdonnmffkdaoajfknoeeecmchibpmkmg?hl=en
    Acoffice
        34
    Acoffice  
       2019-01-31 20:25:29 +08:00 via Android
    真心速度,这个必须赞
    FakeLeung
        35
    FakeLeung  
       2019-01-31 20:53:05 +08:00 via Android
    牛逼啊!!!
    huangdayu
        36
    huangdayu  
       2019-01-31 21:08:42 +08:00 via Android
    牛逼,点赞。楼主用的云函数是那个平台的呢?
    huangdayu
        37
    huangdayu  
       2019-01-31 21:14:09 +08:00 via Android
    报错误,不允许 executescript ……
    cwcauc
        38
    cwcauc  
       2019-01-31 22:01:29 +08:00 via iPhone
    可以做成类似 Google Translate 一样,划完词会自动出来一个小的 G 图标点一下就出来搜索结果了。
    这样不用再去右键里面找了,更方便使用
    namesc
        39
    namesc  
    OP
       2019-01-31 22:08:09 +08:00
    @huangdayu 哪个网站,目前就知道 Chrome Web Store 不能 executeScript,新版我准备不用 executeScript 了。
    greatghoul
        40
    greatghoul  
       2019-01-31 22:09:58 +08:00
    老哥动手能力真强
    namesc
        41
    namesc  
    OP
       2019-01-31 22:10:58 +08:00
    @cwcauc 这个建议不错,安排。
    KasuganoSoras
        42
    KasuganoSoras  
       2019-01-31 22:11:45 +08:00
    有空我帮你造个接口吧……可以代理请求各类网站,不会被 iframe 限制
    PHP 打造,写完了开源
    namesc
        43
    namesc  
    OP
       2019-01-31 22:20:13 +08:00
    @iAndychan #33 不错,这个很成熟了,我还是新手,可以作为我的参考。
    namesc
        44
    namesc  
    OP
       2019-01-31 22:21:24 +08:00
    @KasuganoSoras #42 可以,约定返回格式就好
    myjava
        45
    myjava  
       2019-01-31 22:31:11 +08:00
    KasuganoSoras
        47
    KasuganoSoras  
       2019-01-31 23:07:48 +08:00
    @namesc #44 免翻谷歌搜索: https://google404.net/
    namesc
        48
    namesc  
    OP
       2019-02-10 15:38:41 +08:00
    代码上传到 Github 了,具体看帖子:

    链接 → https://www.v2ex.com/t/533710
    soooulp
        49
    soooulp  
       2020-04-12 16:12:10 +08:00
    大佬救命呀,萌新弱弱问一句,
    图标样式 data:....这里面怎么填,填了本地连接没效果

    #hcSearcheIcons hcsearche-icon[data-seclass=weibo] { font-size: 0; background-image:url('data:D:\新建文件夹\微博\icon16.png') }

    另外,设置多个图标样式是需要添加;么
    wensheng
        50
    wensheng  
       2023-06-06 21:09:58 +08:00
    @soooulp #hcSearcheIcons hcsearche-icon[data-seclass=weibo] { font-size: 0; background-image:url('https://t1.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url=http://weibo.com&size=128') } 用这个
    sma210
        51
    sma210  
       322 天前
    在写文章,复制文本的时候,总会留下小尾巴:GoogleBing 百度
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1118 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 23:00 · PVG 07:00 · LAX 15:00 · JFK 18:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.