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

部门内部的两个系统居然是爬网页传信息

  •  
  •   muraku · 2020-11-26 16:27:32 +08:00 via iPhone · 8800 次点击
    这是一个创建于 1456 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天了解到部门内的运维相关的两个系统居然通过爬虫交流。 一个动态监控故障追加到 redmine,一个实时从 redmine 爬故障信息给对应的负责人发通知的系统(本地客户端) 这种操作太搞笑了,分享一下

    64 条回复    2020-11-30 19:58:57 +08:00
    airfling
        1
    airfling  
       2020-11-26 16:30:42 +08:00
    还好,没人开发运维系统就这样也不错
    crclz
        2
    crclz  
       2020-11-26 16:31:50 +08:00
    看上去很笨拙,但是很多事情能 work 就谢天谢地了
    lrh3321
        3
    lrh3321  
       2020-11-26 16:32:26 +08:00
    异步通信 #(狗头
    luckyrayyy
        4
    luckyrayyy  
       2020-11-26 16:32:54 +08:00
    反正能跑
    ByZHkc3
        5
    ByZHkc3  
       2020-11-26 16:33:15 +08:00   ❤️ 1
    又不是不能用
    tzigone
        6
    tzigone  
       2020-11-26 16:36:38 +08:00
    这个情况很多 ,
    1. 两套系统都没接口
    2. 两套系统的归属不一致
    不用人工导入,要实现自动化,爬虫还真是解决之道
    stardustree
        7
    stardustree  
       2020-11-26 16:36:50 +08:00   ❤️ 27
    换个说法就高端了: “我们使用 redmine 集中管理各个系统的故障事件,并基于 redmine 自研了主动式消息通知系统”
    catsoul
        8
    catsoul  
       2020-11-26 16:42:24 +08:00   ❤️ 26
    罗永浩头
    罗永浩头
    罗永浩肩 罗永浩肩
    白板 罗永浩手臂 白板白板白板白板白板
    白板白板 罗永浩手指 白板白板白板白板
    白板白板 又不是不能用 白板白白板白板
    白板白板白板白板白板白板白板白板白板
    heyjei
        9
    heyjei  
       2020-11-26 16:42:54 +08:00   ❤️ 1
    等你看懂了 redmine 的 reset api 文档动起手写代码的时候,我爬虫已经写好运行起来了🐶🐶
    msana
        10
    msana  
       2020-11-26 16:43:49 +08:00
    我们曾经还通过爬虫实现了各系统的单点登录
    Takashi123
        11
    Takashi123  
       2020-11-26 16:44:22 +08:00
    哈哈我也做过类似的操作,用 vba 做一些小功能的时候从我自己的网站爬取一个字段表示版本号,用来更新自己。
    HuHui
        12
    HuHui  
       2020-11-26 16:48:51 +08:00   ❤️ 2
    刚毕业的时候做过一种中间件,干嘛的呢?

    现有一套业务系统,需要做移动端。
    没有接口怎么办。
    我们就爬系统,一个个功能试。最终做成一个 api 服务器。
    移动端再去调用这个 api 服务。
    xiaolinjia
        13
    xiaolinjia  
       2020-11-26 16:49:16 +08:00
    nacos 没提供 rest api 模糊查询的时候,我也是用爬虫拿某个 group 的所有配置的。
    acmore
        14
    acmore  
       2020-11-26 16:52:41 +08:00   ❤️ 4
    《最强解耦》
    youngce
        15
    youngce  
       2020-11-26 16:54:56 +08:00   ❤️ 22
    《基于网络爬虫的微服务实践》
    westoy
        16
    westoy  
       2020-11-26 16:56:07 +08:00   ❤️ 2
    鹅厂当年搞 linuxqq 的时候, 显 IP 版 QQ 显示用 linuxqq 的用户都是来自深圳腾讯

    当时就有种猜测,linuxqq 的协议是非标的, 用户发的数据都是转到鹅厂的中间服务器, 再转成标准的 qq 数据扔给 QQ 服务器.......
    kingfalse
        17
    kingfalse  
       2020-11-26 17:02:34 +08:00 via Android
    与其跨部门对接扯淡,还不如直接去爬,没毛病
    yh7gdiaYW
        18
    yh7gdiaYW  
       2020-11-26 17:04:40 +08:00
    实习的时候部门还真是这么搞得,也是 redmine
    murmur
        20
    murmur  
       2020-11-26 17:10:05 +08:00
    这不是很正常么,我们集团的 oa 做移动端适配就是爬虫
    leeguo
        21
    leeguo  
       2020-11-26 17:11:59 +08:00
    又不是不能用
    muraku
        22
    muraku  
    OP
       2020-11-26 17:16:48 +08:00 via iPhone
    后续:现在貌似是打算后续弄成接口了😅
    zjsxwc
        23
    zjsxwc  
       2020-11-26 17:22:30 +08:00 via Android
    不用改 redmine 代码呢
    Saszr
        24
    Saszr  
       2020-11-26 17:25:28 +08:00
    @HuHui #12 +1
    Vegetable
        25
    Vegetable  
       2020-11-26 17:29:58 +08:00
    这不是很常规的操作吗?
    有时候运营希望做一个导出功能,更简单的办法其实是写一个导出脚本而不是前端后端一起该系统。
    见怪不怪了,少年,早点下班不香吗
    lotosbin
        26
    lotosbin  
       2020-11-26 17:34:32 +08:00 via iPhone   ❤️ 1
    尝试定制下 redmine 就知道 还是爬虫简单
    mikuazusa
        27
    mikuazusa  
       2020-11-26 17:34:51 +08:00
    常规操作,很多异构系统和老系统根本找不到人改了,这是最快捷的办法了...
    kop1989
        28
    kop1989  
       2020-11-26 17:35:06 +08:00
    肯定是因为被取数的系统不配合而导致。
    这个太正常了。
    比如因为某些原因不能更新,比如两边领导不对付,比如双方都对接,都不想当工作量大的那方等等
    vwhenx
        29
    vwhenx  
       2020-11-26 17:38:27 +08:00
    调用 API 本身和爬虫原理上就是一回事啊,你仔细想想
    ik
        30
    ik  
       2020-11-26 17:51:54 +08:00 via iPhone
    😢, 本人写过从内部一个系统抓取数据同步到 redmine....
    Tink
        31
    Tink  
       2020-11-26 18:37:08 +08:00
    又不是不能用
    littlewing
        32
    littlewing  
       2020-11-26 19:04:01 +08:00 via iPhone
    公司内部部门之间的合作远比你想象得困难得多
    ajaxfunction
        33
    ajaxfunction  
       2020-11-26 19:46:09 +08:00
    巧了,我们部门内部也是用的爬虫,因为要协调其他分公司太难了,数据泄露还追责。
    只好模拟登录取数据,然后二次开发
    xingyun12
        34
    xingyun12  
       2020-11-26 19:50:08 +08:00
    这才是完全匹配哈哈。不用担心中间商赚差价
    LiuSha
        35
    LiuSha  
       2020-11-26 20:13:40 +08:00 via Android
    又不是不能用,哈哈
    huobazi
        36
    huobazi  
       2020-11-26 20:14:41 +08:00
    领导让你 “敏捷” 的用上一上午开发这个功能的时候,能想到这个办法的是人才。
    你是没见过爬数据丢 ftp,另一个部门定时去 ftp 拉文件处理的。
    DoctorCat
        37
    DoctorCat  
       2020-11-26 20:16:24 +08:00
    没准,完美的解释了康威定律
    cherryas
        38
    cherryas  
       2020-11-26 20:18:33 +08:00
    很正常,伪静态其中的一种方法不就是这样?
    laminux29
        39
    laminux29  
       2020-11-26 20:26:00 +08:00
    大惊小怪。

    你没见到过领导指挥几个员工干活,员工慢吞吞故意拖着不干,领导没办法,只能重新招相同数量的几个人,来试图分掉他们的工作。

    然后新进来的这几个人,又被另外一个部门的更高地位的大 boss 直接拿走了好几个。

    剩下的几个,又被下属领导分掉几个,最后真正能实现当初目的的只剩下一个了。

    接着部门有个大项目,同部门另一个组要这个组配合,该组不仅不配合,还各种拖后腿。

    这些事情见多了,你这种小事自然就见怪不怪了。

    世界之大,无奇不有,但很多矛盾归纳起来,其实就是利益二字在作祟。
    MakeItGreat
        40
    MakeItGreat  
       2020-11-26 20:33:36 +08:00 via Android
    Nicoco
        41
    Nicoco  
       2020-11-26 21:27:49 +08:00
    想象力一级棒
    levelworm
        42
    levelworm  
       2020-11-26 22:05:30 +08:00 via Android
    我们当初需要每个月进 BI 系统手动下载几百个 csv,后来我实在受不了就用 vba 写了个爬虫,然后在 excel 里自动处理一下转换成 csv 。
    raaaaaar
        43
    raaaaaar  
       2020-11-26 22:26:22 +08:00 via Android
    @youngce #15 。。。
    akira
        44
    akira  
       2020-11-27 02:33:32 +08:00
    运维系统啊。。正常。。
    fmumu
        45
    fmumu  
       2020-11-27 09:43:08 +08:00
    有个系统要对接,又不提供接口,咋办呢
    sunus
        46
    sunus  
       2020-11-27 10:17:45 +08:00   ❤️ 1
    这叫 RPA
    madpecker009
        47
    madpecker009  
       2020-11-27 10:30:42 +08:00
    @catsoul 现在都这么抽象的了么
    muraku
        48
    muraku  
    OP
       2020-11-27 10:57:54 +08:00 via iPhone
    @fmumu 都是自己人开发的,明明可以商量个接口的😓
    milukun
        49
    milukun  
       2020-11-27 11:14:56 +08:00
    😄同类的事情还有网站的 web 端和 app 端是两个团队,app 端同步 web 端的文章数据是靠爬虫 XD
    不过高级一点的是 web 端发布文章后会推送消息给爬虫,然后爬虫启动
    原因是因为本来是两家公司,然后 web 端和 app 端编辑后台不是互通的
    NjcyNzMzNDQ3
        50
    NjcyNzMzNDQ3  
       2020-11-27 11:19:07 +08:00
    原来大家都是这么想的啊,又不是不能用。

    不然沟通、折腾联调接口真的很累啊。
    x66
        51
    x66  
       2020-11-27 11:21:03 +08:00   ❤️ 1
    太正常了,求别的部门给个接口比什么都难,还不如自己动手写爬虫,我们这特别是运维或者部署这块的流程,全靠爬虫实现自动化
    x66
        52
    x66  
       2020-11-27 11:22:49 +08:00
    @x66 我们公司为了做一些订单自动化的工作,专门搞了一下基于爬虫的数字化转型项目
    annielong
        53
    annielong  
       2020-11-27 11:47:00 +08:00
    好多内外不同的项目都用 ftp,看过一个据说最严的物理隔离用摄像头取数据
    hareandlion
        54
    hareandlion  
       2020-11-27 13:23:11 +08:00 via Android
    不同的设计标准导致最后只能从 UI 交换系统间的信息,
    hareandlion
        55
    hareandlion  
       2020-11-27 13:24:02 +08:00 via Android
    不同的设计标准导致最后只能从 UI 交换系统间的信息,但是……相比还在运行的上个世纪的系统,这已经算进步了吧🤣
    heyhumor
        56
    heyhumor  
       2020-11-27 13:31:01 +08:00
    存在即合理
    wangkun025
        57
    wangkun025  
       2020-11-27 14:03:24 +08:00
    赞。
    tangzh55
        58
    tangzh55  
       2020-11-27 14:33:38 +08:00
    @catsoul #8
    @lc1450 #19
    supuwoerc
        59
    supuwoerc  
       2020-11-27 15:13:06 +08:00
    我们有个 zf 内网的项目,年头久远,需要内网文件外网预览,写了个服务专门把内网的 blob 推送到外网数据库,再下载到外网环境的机器上,再走 office web365 预览 =。=||
    wangyzj
        60
    wangyzj  
       2020-11-27 15:25:40 +08:00
    @catsoul #8 逗死我了
    CallMeReznov
        61
    CallMeReznov  
       2020-11-27 15:58:32 +08:00   ❤️ 1
    讲道理没有问题啊,都是小作坊,野路子山炮,能快速监控与可维护才是我最关心的.
    找开发求给个状态接口跟球爹一样,还不如自己弄来的快。

    工作经历类似的问题我处理过 N 多,大概举几个例子。

    1.人脸抓拍系统,没有抓拍数据的统计数据报表,可业务那块每天都找我要,于是我就写了个 FLASK,你想看直接打开刷新一下。
    2.机房没温度监控,可空调老爆,没办法 9 块钱的 8266+1 块钱的 BMP180,插到服务器上然后用 zabbix 取值监控,最近我还搞了个小的抬头显示在我面前,可以随时看到机房温度,后面还想实现 ADB 电话与红外控制空调,和断电检测。
    3.前端摄像头在线率没办法统计,写了个端口监控更新状态,然后用 DJANGO 做后台管理展示.
    4.游戏业务被攻击,接口有问题被各种 CC 和撞库,还有直接注入到库游戏金币为负数的,开发解决不了就自己写脚本定时检测封禁。


    jsjgjbzhang
        62
    jsjgjbzhang  
       2020-11-27 16:08:19 +08:00
    别说小公司了 就是大公司也有这么干的
    wolong
        63
    wolong  
       2020-11-29 19:01:54 +08:00 via iPhone
    两套系统,应该是常规操作了。之前维护过一个系统,要求供应商提供接口,但是价格翻倍(原价一年 20 万,提供接口要 40 万),老板不愿加钱,让我们自己想办法。除了爬虫还能有什么方法。
    另一套系统也是不提供接口,不过使用了数据库,我们直接连到了远程数据库取数据,后来公司换了一个技术负责人,说不给这样直接连接远程数据库,又只好用爬虫。
    julyclyde
        64
    julyclyde  
       2020-11-30 19:58:57 +08:00
    宽松耦合
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1249 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 23:28 · PVG 07:28 · LAX 15:28 · JFK 18:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.