feichao
V2EX  ›  Node.js

分享一个自己写的工具, 用来从 HTML 文档中提取 JSON 数据

  •  
  •   feichao · Nov 30, 2017 · 5572 views
    This topic created in 3113 days ago, the information mentioned may be changed or developed.

    Temme在 CSS/jQuery 选择器语法上添加了一些自定义的语法, 用于从 HTML 文档中提取想要的 JSON 数据. Temme 基于 cheerio, 支持一次性选取多个字段或者一个列表, 比较适用于已经使用 cheerio 的 Node 爬虫.

    playground

    豆瓣短评网页例子

    最近和 puppeteer 配合使用感觉还是蛮爽的, 打开一个网页, 写一个选择器就可以直接选取出所有想要的 JSON 数据了😄. 欢迎 fork&star, 或者提一些改进意见

    7 replies    2017-12-04 13:42:32 +08:00
    jianguiqubaa
        1
    jianguiqubaa  
       Dec 1, 2017
    这个方式挺有意思的! 不过要是命令行能很好的支持就好了。。。
    之前用 pup 处理 html, 解析完之后的东西还需要在处理一下, 要是能直接出 json, 就能和 jq 之类的命令一起用了
    feichao
        2
    feichao  
    OP
       Dec 1, 2017
    @jianguiqubaa 嗯, 命令行也是一个很合适的使用场景, 之前一直在写爬虫, 想着只是个 Node 的工具. 这几天添上命令行工具.
    feichao
        3
    feichao  
    OP
       Dec 2, 2017   ❤️ 1
    @jianguiqubaa 已经支持命令行了. 用法参考了一下 pup. https://github.com/shinima/temme-showcase#命令行 api
    jianguiqubaa
        4
    jianguiqubaa  
       Dec 4, 2017
    @feichao 真是速度!

    我试用了一下, 发现用了 Object.entties, 只能 7 以上的版本能用么, 版本要求有点高啊!
    feichao
        5
    feichao  
    OP
       Dec 4, 2017
    @jianguiqubaa
    刚改了改用法, CI 也显示 node 6.12.0 可以用了. https://travis-ci.org/shinima/temme/builds/311130645
    重新安装就可以用了😄
    jianguiqubaa
        6
    jianguiqubaa  
       Dec 4, 2017
    @feichao

    真是快!待我使用一段时间后给你使用反馈~
    feichao
        7
    feichao  
    OP
       Dec 4, 2017
    @jianguiqubaa 好的, 谢谢. 学生党每天挂在电脑前, 看看书写写代码, 比较闲 o(* ̄▽ ̄*)ブ
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1000 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 22:11 · PVG 06:11 · LAX 15:11 · JFK 18:11
    ♥ Do have faith in what you're doing.