++ed by:

1 non-PAUSE user.

Jakob Voß


Catmandu::Importer::Wikidata - Import from Wikidata


version 0.06


    catmandu convert Wikidata --ids Q1,P227
    catmandu convert Wikidata --site dewiki --title Wahnsinn

    echo Q1 | catmandu convert Wikidata
    echo Wahnsinn | catmandu convert Wikidata --site dewiki
    echo dewiki:Wahnsinn | catmandu convert Wikidata

    echo Q1 | catmandu convert Wikidata --fix 'retain_field("labels")'


This Catmandu::Importer queries Wikidata for entities, given by their Wikidata identifier (Q..., P...) or by a title in some know Wikidata site, such as the English Wikipedia (enwiki). The entities are either specified as options (ids, site, and/pr title) or as line-separated input values. By default, the raw JSON structure of each Wikidata entity is returned one by one. Entities not found are returned with the missing property set to 1 like this:

    { "id": "Q7", "missing": "1" }

To further process the JSON structure Catmandu::Wikidata contains several Catmandu fixes, e.g. to only retain a selected language.


This importer extends Catmandu::Importer::getJSON, so it can be configured with options agent, timeout, headers, proxy, and dry. Additional options include:


Wikidata API base URL. Default is http://www.wikidata.org/w/api.php.


A list of Wikidata entitiy/property ids, such as Q42 and P19. Use comma, vertical bar, or space as separator. Read from input stream if no ids, nor titles are specified.


Wiki site key for referring to Wikidata entities by title. Default is enwiki for English Wikipedia. A list of supported site keys can be queried as part of https://www.wikidata.org/w/api.php?action=paraminfo&modules=wbgetentities (unless https://bugzilla.wikimedia.org/show_bug.cgi?id=58200 is fixed).


Title of a page for referring to Wikidata entities. A title is only unique within a selected site. One can also prepend the site key to a title separated by colon, e.g. enwiki:anarchy for the entity that is titled "anarchy" in the English Wikipedia. Read from input stream if no titles, nor ids are specified.


Jakob Voß


This software is copyright (c) 2014 by Jakob Voß.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.