V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
VKMEPR
V2EX  ›  Linux

200 元帮写个文本处理小脚本

  •  
  •   VKMEPR · 2019-10-06 16:38:15 +08:00 · 8032 次点击
    这是一个创建于 1906 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有个文本需要转换为表格文件,有朋友可以帮忙写个处理脚本吗?用 shell、awk、python 都可以,熟悉这些语言的应该很容易,酬谢 200 元。

    可以帮忙的麻烦留个联系方式,谢谢。

    第 1 条附言  ·  2019-10-06 18:13:46 +08:00
    抱歉,刚才没时间来得及编辑需求,现在补上。

    需要转换的数据源是一个 yml 文件,里面储存了多个软件的历史版本,其内容格式如下:

    <pre>- pgdlzv:
    V1.0.1: http://lg.la.ramnode.com/static/100MB.test
    V1.0.2: http://lg.la.ramnode.com/static/1000MB.test
    - pgdlzv_beta_ver:
    V1.0.1: http://lg.la.ramnode.com/static/100MB.test
    V1.0.2: http://lg.la.ramnode.com/static/1000MB.test
    - pgdlzv_alpha_ver:
    V1.0.1: http://lg.la.ramnode.com/static/100MB.test
    V1.0.2: http://lg.la.ramnode.com/static/1000MB.test
    - bdlxri:
    V1.0.1: http://lg.la.ramnode.com/static/100MB.test
    V1.0.2: http://lg.la.ramnode.com/static/1000MB.test
    - bdlxri_beta_ver:
    V1.0.1: http://lg.la.ramnode.com/static/100MB.test
    V1.0.2: http://lg.la.ramnode.com/static/1000MB.test
    - bdlxri_alpha_ver:
    V1.0.1: http://lg.la.ramnode.com/static/100MB.test
    V1.0.2: http://lg.la.ramnode.com/static/1000MB.test</pre>

    上面摘录了一小部分,实际上还有很多内容(格式相同),需要将其转换为 HTML 表格代码,并分别输出到文件。

    譬如 pgdlzv、pgdlzv_beta_ver、pgdlzv_alpha_ver 输出到同一文件(文件名为 pgdlzv,也就是开头相同的部分)。

    表格格式如下图:

    https://i.loli.net/2019/10/06/Y7I3lhV1o8DcF5z.png

    表格里各项数据获取来源说明:

    “文件时间”:可使用 curl -I 获取链接文件的 Last-Modified
    “软件版本”:取自源文件里的版本号
    “软件类型”:取自源文件里的段落第一行字符串,不过这里要做个替换,比如 pgdlzv 替换为 Release version,pgdlzv_beta_ver 替换为 Beta version,pgdlzv_alpha_ver 替换为 Alpha version
    “文件下载”:取自源文件里的下载链接,加一个 <a> 超链接
    “文件大小”:可使用 curl -I 获取链接文件的 Content-Length
    第 2 条附言  ·  2019-10-06 18:16:24 +08:00
    <pre>标签编辑器没能识别,请忽略。
    32 条回复    2019-10-26 17:25:00 +08:00
    navigaid
        1
    navigaid  
       2019-10-06 16:47:04 +08:00
    whwq2012
        2
    whwq2012  
       2019-10-06 16:50:12 +08:00 via iPad
    也许用 excel 自带的一些功能都能完成,你能发个例子吗
    rebackhua
        3
    rebackhua  
       2019-10-06 16:53:05 +08:00
    转 csv 就差不多了,shell 比较快
    zhzbql
        4
    zhzbql  
       2019-10-06 16:53:35 +08:00
    ant2017
        5
    ant2017  
       2019-10-06 16:56:45 +08:00 via Android
    MTA2MzQ2NjkwOQ==
    Litecoins
        6
    Litecoins  
       2019-10-06 16:56:52 +08:00 via iPhone
    MjQ3MzMzNDE3QHFxLmNvbQ==
    lspvic
        7
    lspvic  
       2019-10-06 16:58:01 +08:00 via Android
    这你们也抢,让 1L 来
    blue2008
        8
    blue2008  
       2019-10-06 17:01:28 +08:00
    样本和需求麻烦发我一下,不用给钱。
    急用找楼上几位大神,我只是比较好奇,找点事情做做。谢谢。
    邮箱 YWRtaW5AYmx1ZW5vb2IuY29t
    aaniao002
        9
    aaniao002  
       2019-10-06 17:20:58 +08:00 via Android
    把题目发出来,说不定答案就会显示了。
    coderluan
        10
    coderluan  
       2019-10-06 17:27:42 +08:00
    200 块钱就别搞单独联系了,你把需求发出来,想做的把代码发出来,谁先完成你钱发谁。
    artandlol
        11
    artandlol  
       2019-10-06 18:01:40 +08:00 via Android
    需求发出来,给你最佳答案还免费
    akatquas
        12
    akatquas  
       2019-10-06 18:08:39 +08:00 via iPhone
    哈哈哈哈楼上几个,
    VKMEPR
        13
    VKMEPR  
    OP
       2019-10-06 18:24:14 +08:00
    @navigaid
    @whwq2012
    @zhzbql
    @ant2017
    @Litecoins
    @blue2008
    @aaniao002
    @coderluan
    @artandlol
    抱歉,刚才没时间来得及编辑需求,现在补上了。如果可以实现,麻烦 @下我。转换表格主要是方便朋友之间查阅之用,也是公益性质的,所以只能发 200 意思一下,这里的大佬们见谅哈~
    bequt
        14
    bequt  
       2019-10-06 18:28:41 +08:00 via Android
    我也是来做题的
    artandlol
        15
    artandlol  
       2019-10-06 18:35:19 +08:00 via Android
    http://convertcsv.com/yaml-to-csv.htm 先转成 excel,再一顿猛操作,再导出成 HTML 或者把 csv 内嵌到 HTML
    dunn
        16
    dunn  
       2019-10-06 18:47:56 +08:00 via iPhone
    哈哈。楼上几位笑死我了
    保证按时完成。 做完还倒贴十块钱
    手动滑稽。开玩笑
    cdlixucd
        17
    cdlixucd  
       2019-10-06 18:59:18 +08:00 via Android
    钱少不开工 这句话没听过吗😄
    navigaid
        18
    navigaid  
       2019-10-06 19:26:15 +08:00
    @VKMEPR 这个简单,可以做。微信就是我 id,注明一下来自 v2
    v2zyx
        19
    v2zyx  
       2019-10-06 19:30:35 +08:00 via Android
    贿赂 300 块,选我选我😌😌
    zbinlin
        20
    zbinlin  
       2019-10-06 20:11:29 +08:00
    如果真的是公益性质的,可以找我,免费~
    autogen
        21
    autogen  
       2019-10-06 20:16:02 +08:00
    这个太简单了
    navigaid
        22
    navigaid  
       2019-10-06 21:02:31 +08:00
    已经搞定了,完整的 YAML 发我吧,@VKMEPR
    navigaid
        23
    navigaid  
       2019-10-06 21:20:37 +08:00
    我这里没拆成多个文件,网页是用 pandoc 从 markdown 表格生成的,样式在单独的 CSS 里,细节上的出入后续都可以再改,分分钟的事情 @VKMEPR
    VKMEPR
        24
    VKMEPR  
    OP
       2019-10-06 21:25:39 +08:00
    @navigaid WX 搜索不到用户名?
    yoshiyuki
        25
    yoshiyuki  
       2019-10-06 21:29:07 +08:00
    VKMEPR
        26
    VKMEPR  
    OP
       2019-10-06 21:33:29 +08:00
    @yoshiyuki 额,编辑器忽略了,有带 4 个空格缩进。
    navigaid
        27
    navigaid  
       2019-10-06 21:35:34 +08:00
    @VKMEPR 现在可以了
    navigaid
        28
    navigaid  
       2019-10-06 21:41:17 +08:00
    @VKMEPR 你再试试
    kajweb
        29
    kajweb  
       2019-10-07 03:46:18 +08:00
    https://github.com/kajweb/outsourcing-200-v2ex-script 搞定,虽然可能拿不到钱。哈哈哈
    VKMEPR
        30
    VKMEPR  
    OP
       2019-10-07 08:03:24 +08:00
    @kajweb 太感谢了,昨晚找 1L 写了,不好意思~
    ps1aniuge
        31
    ps1aniuge  
       2019-10-07 13:47:39 +08:00
    关于楼主的脚本,大致流程如下:
    1powershell 用 yaml 模块导入 yaml,但不支持无缩进的 yaml
    2 用哈希表 或 pscustomobject,来处理,不规范的数据。
    3 用 format-table 输出表格。再加上管道,用 out-html 输出 html 文件。


    下面插播广告。 ;)

    QQ 群号=183173532
    名称=powershell 交流群
    本群建议 [免费帮] 群友写脚本!同时,支持 [红包求] 群友写脚本。

    复杂脚本,或 用户求你写脚本:
    1 个人脚本 10 元红包起。企业脚本 100 起。禁止求人写黑客 ps1,禁止帮写作恶 ps1,禁止分享黑客脚本!
    2 免责声明:使用脚本,看清源码,对用户产生任何不良后果,概不负责。
    3 用户需要说明系统环境,ps 版本。详细的需求,越细越好。必须提供小部分数据,作为测试。
    需求必须一次说清。需求增加,更改,则重新付费。一定要说的很细致全面。
    或者更改需求,增加一条需求,增加 5%---20%费用。

    4 只负责编写脚本,和除错。不负责运维。如安装环境,调试,修改。如需运维应该付出,写脚本 4----5 倍的运维费用。

    5 写 ps1 脚本的费用,大致分为这么几块:
    5.1 帮用户整理,明确需求。产出 [需求文档] 。<-----用户需求大都未十分明确,顾用户应该先付这块钱。
    5.2 写脚本费用。产出 [脚本] 。
    5.3 安装调试费用。产出 [在目的机子上,工作正常的脚本] 。
    5.4 售后服务费用。
    missdeer
        32
    missdeer  
       2019-10-26 17:25:00 +08:00
    这种标准做法不是应该 xslt 吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3415 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 04:59 · PVG 12:59 · LAX 20:59 · JFK 23:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.