V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
whatacold
V2EX  ›  分享创造

一个可能并没有什么卵用的、用 Python 正则查找文本的服务

  •  
  •   whatacold · 2021-05-30 14:28:08 +08:00 · 1499 次点击
    这是一个创建于 1272 天前的主题,其中的信息可能已经有所发展或是发生改变。

    服务在 https://texttoolkit.com/re.findall ,接下来说说废话。

    场景 1

    我工作日常需要用各种内部管理系统,查看监控、日志、按机器 IP 过滤列表等等 ,经常需要人肉从界面 A 抠出来一堆 IP 列表到页面 B 操作,一两个 IP 都好说, 上了 5 个以上的时候就会把自己搞得很烦躁,感觉自己就是个机器。

    也尝试过一些批量的办法:

    1. 对于 table 型的数据,从浏览器复制粘贴到 excel 中,再把对应列提取出来
    2. 用 shell 包装一下 grep/sed/awk 来完成

    可行是可行,但抵挡不住内部系统各种 UI 不统一的问题,比如多 IP 分隔符,有的时候格式是 IP1|IP2 , 有的时候又是 IP1,IP2 ,使得上面的方法都不太灵活,每次用的时候都需要稍微定制一番, 每个工具的正则语法可能还会有一点点差异。

    于是我就想,是否有别的更好的方法呢?有天想到可以利用正则来很好的完成这个任务, 而且正则还有一个 bonus,那就是对于数据没有“格式”要求,不像 awk 那样针对特定的列, 只要满足 pattern 即可;另外对于 join 的符号,也可以在界面上很方便地更改。

    场景 2

    举一个开发例子,出于某种原因,你现在需要提取 protobuf 定义的所有字段名字,那也可以用这个服务来完成。 比如定义如下:

       message Person {
         required string Name = 1;
         required int32 Id = 2;
         optional string Email = 3;
       }
    

    那么用正则也很简单,用 (\w+) = 即可把它们都抓出来。

    场景 3

    某天你上网看到一篇好文章,里面包含了大量精美的图片,你想把图片 url 都找出来,然后用 wget 下载下来, 在本地保存一份,这个服务也可以帮一点忙。

    1. 右键查看网页源码,粘贴到文本框中
    2. 写一个提取 img src 的正则: img.*?src="([^"]+)"
    3 条回复    2021-05-30 15:34:14 +08:00
    whatacold
        1
    whatacold  
    OP
       2021-05-30 14:42:28 +08:00
    v2ex 上传头像功能是挂掉了吗?想换下头像,试了几次都不行:(
    hxsf
        2
    hxsf  
       2021-05-30 14:53:09 +08:00
    场景 1 建议试试自己写个 油猴脚本,直接 js 取 dom 会更加方便,给页面直接加个按钮,点击之后直接复制到剪切板。
    whatacold
        3
    whatacold  
    OP
       2021-05-30 15:34:14 +08:00
    @hxsf 嗯嗯,确实也是一种方法,感谢建议。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1301 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 17:40 · PVG 01:40 · LAX 09:40 · JFK 12:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.