Wikidata:Ferramentas/WikibaseJS-cli
Wikibase-cli é uma interface de linha de comando para Wikidata ou qualquer outra Wikibase (Q16354758) instância, baseada em [[Special:MyLanguage/Wikidata:Tools/WikibaseJS-edit|wikibase-edit] Ele pode ser usado no terminal como uma interface alternativa para a interface do navegador da Web ou em scripts para executar muitas edições.
Conforme declarado no nome, WikibaseJS-cli é escrito em JavaScript (Q2005), para ser executado como um processo Node.js (Q756100). Este processo pode, portanto, ser executado em qualquer ambiente onde Node.js (Q756100) possa ser instalado ou, alternativamente, em um contêiner Docker, consulte documentação de instalação.
Documentação
Veja Documentação
Amostras
A documentação em https://github.com/maxlath/wikibase-cli inclui muitos exemplos. Há também mais alguns exemplos de código em
- https://github.com/maxlath/wikibase-cli-template-collection
- https://github.com/maxlath/wikidata-scripting
Mais alguns aqui.
Rótulos e descrições
- adicionar um rótulo
wd set-label Q89208827 en "Aellopus Saxum"
- Adicionar uma descrição
wd set-description Q89208827 en "saxum on asteroid 101955 Bennu"
Adicionando declarações
- adicione uma declaração (simples)
wd ac Q75887503 P735 Q18009833
- adicione uma declaração (simples, com resumo de edição)
wd ac Q96817942 P921 Q11558 --summary 'adding claim [[Property:P921]]: [[Q11558]]'
- adicione uma declaração (simples, usando um modelo)
passo #1: crie um arquivo "givenname.js" com o seguinte:
module.exports = (qid, gn) => {
return {
id: qid,
claims: { P735: { value: gn } },
summary: "adding claim [[Property:P735]]: [[" + gn + "]]"
}
}
passo #2: teste com (nenhuma edição é feita):
wd ee givenname.js Q75887503 Q18009833 --dry
passo #3: execute-o com (editar Wikidata):
wd ee givenname.js Q75887503 Q18009833
- adicione uma instrução (complexa com algum valor especial, qualificador e referência, usando um modelo)
passo #1: crie um arquivo "templatehay.js" com o seguinte:
module.exports = (qid, hay, color) => {
return {
id: qid,
claims: {
P2827: {
"snaktype":"somevalue",
// value: "Q53569537",
qualifiers: { P1932: color },
references: [ { P248: 'Q96634446', P8662: hay } ]
}
} ,
summary: "adding claim [[Property:P2827]]: " + color + " from [[Q96634446|L'Haÿ]]"
}
}
passo #2: teste com (nenhuma edição é feita):
wd ee templatehay.js Q60964601 1837 "rose vif" --dry
passo #3: execute-o com (editar Wikidata):
wd ee templatehay.js Q60964601 1837 "rose vif"
Criar itens
- cria itens semelhantes a outro item
passo #1: crie um arquivo de modelo baseado em uma amostra adequada (aqui Q100700188)
wd generate-template --create-mode Q100700188 > Qianguimon.js
passo #2: abra o arquivo |
passo #3: edite-o em um modelo |
module.exports = function () {
return {
type: 'item',
labels: {
en: 'Qianguimon elongatum',
nl: 'Qianguimon elongatum'
},
descriptions: {
en: 'species of crustacean',
nl: 'taxon'
},
aliases: {},
claims: {
// instance of: taxon
P31: 'Q16521',
// taxon name
P225: 'Qianguimon elongatum',
// taxon rank: species
P105: 'Q7432',
// parent taxon: Qianguimon
P171: 'Q100605554',
// WoRMS-ID for taxa
P850: '1062897'
},
sitelinks: {}
}
}
|
module.exports = function (name, identifier) {
return {
type: 'item',
labels: {
en: name,
nl: name
},
descriptions: {
en: 'species of crustacean',
nl: 'taxon'
},
aliases: {},
claims: {
// instance of: taxon
P31: 'Q16521',
// taxon name
P225: name,
// taxon rank: species
P105: 'Q7432',
// parent taxon: Qianguimon
P171: 'Q100605554',
// WoRMS-ID for taxa
P850: identifier
},
sitelinks: {}
}
}
|
passo #4: crie outros semelhantes usando esse modelo:
wd ce Qianguimon.js "Qianguimon rongxianense" 1389612
passo #5: verifique o resultado
- Isso poderia ter sido: Q100700189
- criar um item com base em um modelo pré-fabricado
passo #1: copie latinscriptfemalegivenname.js para seu diretório cli
passo #2: use-o
wd ce latinscriptfemalegivenname.js "Clarenza"
passo #3: verifique o resultado
- Isso poderia ter sido: Q100967811
Código
- Repositório: https://github.com/maxlath/wikibase-cli
- Licença: MIT
Problemas
Para sinalizar um bug ou pedir ajuda, você pode abrir um problema por $ 1.
Lista de edições
As edições feitas pelo wikibase-edit usam a tag WikibaseJS-cli
por padrão, o que permite obter uma lista de edições feitas desta forma:
[$ 2 em mudanças recentes].
Ao usar o [modo de lote https://github.com/maxlath/wikibase-cli/blob/master/docs/write_operations.md#batch-mode], as edições são agrupadas em EditGroups.
Caixa de usuário
Babel user information | ||
---|---|---|
| ||
Users by language |
Você pode compartilhar seu amor por esta ferramenta exibindo uma caixa de usuário em sua página de usuário: adicione {{#babel:Wikibase CLI}}
Lista de usuários: Category:Wikibase CLI user