Nanometer Process Machine

    wiki-infobox-parser

    0.1.11 • Public • Published

    Wikipedia Infobox Parser

    build status npm version

    A parser for Wikipedia Inforbox, as described in Wikipedia help page:

    An infobox is a fixed-format table designed to be added to the top right-hand corner of articles to consistently present a summary of some unifying aspect that the articles share and sometimes to improve navigation to other interrelated articles.

    alt nodejs_infobox_screenshot

    alt nodejs_infobox_screenshot

    Features

    It's still on development, it needs to support more markup templates.

    • Get Wikipedia Infobox by keyword
    • Support keyword redirection
    • Convert Wikipedia Markup text to JSON text

    Installation

    npm install wiki-infobox-parser
    

    Usage

    var wikiParser = require('wiki-infobox-parser');
     
    wikiParser('france', function(err, result) {
      if (err) {
            console.error(err.message);
        } else {
            console.log(result);
        }
    });

    Result

    alt nodejs_infobox_screenshot

    The parsed result is

    {
        "name": "Node.js",
        "logo": "frameless",
        "author": "Ryan Dahl",
        "developer": "[https://github.com/ry/node/blob/master/AUTHORS Node.js Developers], Joyent, [https://github.com/joyent/node/graphs/contributors GitHub Contributors]",
        "operating system": "OS X, Linux, Solaris, FreeBSD, OpenBSD, Microsoft Windows (older versions require Cygwin), webOS, NonStop OS",
        "status": "Active",
        "released": "2009/05/27",
        "latest release version": "4.2.1",
        "latest release date": "2015/10/13",
        "programming language": "C, C++, JavaScript",
        "genre": "Event-driven networking",
        "license": "MIT",
        "website": "http://nodejs.org"
    }

    How to contribute

    Todo

    • Support map caption
    • Support link & free link
    • Support picture
    • Support template: {{fake clarify}}
    • Support template: {{fake citation needed}}
    • Support template: {{fake elucidate}}
    • Support template: {{fake heading}}
    • Support template: {{fake notes and references}}
    • Support template: {{dummy ref}}
    • Support template: {{dummy backlink}}
    • Support template: {{dummy footnote}}
    • Support template: {{break}}
    • Support template: {{break|5}}
    • Support template: {{clear}}
    • Support template: {{clear|left}}
    • Support template: {{clear|right}}
    • Support template: {{plainlist}}
    • Support template: {{startflatlist}}
    • Support template: {{flatlist}}
    • Support template: {{hlist|first item|second item|third item|...}}
    • Support template: {{bulleted list |item1 |item2 |...}}
    • Support template: {{pagelist}}
    • Support template: {{nowrap}}
    • Support template: {{italics}}
    • Support template: {{smallcaps|small caps}}
    • Support template: {{pad|4.0em}}

    Issue tracker

    img

    Don't hesitate to contact me when you have any issue or idea about this parser, both PivotalTracker and Github issue are welcomed!

    Tests

    # Test with a small test cases set 
    make test
     
    # Test with a full test cases set 
    # It will take ~2mins, depending on the network 
    make test-all

    Before sending a PR please add corresponding tests, thanks!

    Contributors

    Reference

    Install

    npm i wiki-infobox-parser

    DownloadsWeekly Downloads

    35

    Version

    0.1.11

    License

    MIT

    Last publish

    Collaborators

    • zhipeng