Wiki(pedia/data) entity extractor.
import { getEntities } from 'wiki-entity';
// get Europe by title
getEntities({ language: 'en', titles: ['Europe'] }).then(entities => {});
// get Europe by id
getEntities({ language: 'en', ids: ['Q46'] }).then(entities => {});
Gets entities from wikidata and wikipedia.
Required. ids or titles require. Params properties:
- ids :string[] - wikidata ids; (max 500)
- titles :string[] - wikipedia article titles; (max 500)
- language :string - language of titlesparam and of the result object info; default:en
- props :string[] - entity props to get. Can by: info|sitelinks|aliases|labels|descriptions|claims|datatype;
- claims :string - How to resolve the claims. Can be: none,all,item,property. Default:none.allresolvesitemandpropertytypes.
- extract :number - Sentences in the extract. Default: 0. Works only ifsitelinksis present.
- types :boolean | string[] - trueto get entity types. Filter types by prefixes. Example: [dbo,schema] will return only types defined bydbpedia.org/ontology/andschema.org. Default:false.
- redirects : boolean - get wikipedia redirects titles. Default: false. Works only ifsitelinksis present.
- categories : boolean - get wikipedia article categories. Default: false. Works only ifsitelinksis present.
- httpTimeout: number - http requests timeout
- languages: string[] - languages for WikiEntity.labels
- wikiPageId: boolean - get wikiPageId, Default true
Convert a complex WikiEntity object to SimpleEntity object.
WikiEntity is a simple version of an item returned by Wikidata API. It also may include some extra properties from Wikipadia API.
type WikiEntity = {
    id: string;
    label?: string;
    labels?: PlainObject<string>;
    description?: string;
    extract?: string;
    pageid?: number;
    aliases?: string[];
    sitelinks?: PlainObject<string>;
    claims?: PlainObject<WikidataProperty>;
    types?: string[];
    redirects?: string[];
    categories?: string[];
    redirectsToId?: string;
    redirectsFromId?: string;
}
type WikidataProperty = {
    id: string;
    label?: string;
    description?: string;
    values: WikidataPropertyValue[];
}
type WikidataPropertyValue = {
    datatype: string;
    value: any;
    pageid?: number;
    value_string?: string;
    label?: string;
    description?: string;
    qualifiers?: WikidataEntityClaims | null;
}
type PlainObject<T> = {
    [index: string]: T
}export enum SimpleEntityType {
    EVENT = 'E',
    ORG = 'O',
    PERSON = 'H',
    PLACE = 'P',
    PRODUCT = 'R',
    WORK = 'W',
}
export type SimpleEntityData = { [prop: string]: string[] }
export type SimpleEntity = {
    lang?: string
    wikiDataId?: string
    name?: string
    abbr?: string
    description?: string
    about?: string
    wikiPageId?: number
    wikiPageTitle?: string
    type?: SimpleEntityType
    types?: string[]
    countryCodes?: string[]
    data?: SimpleEntityData
    categories?: string[]
    redirectsToId?: string;
}