Recuperar respostas do Launchpad programaticamente

1

Eu gostaria de recuperar programaticamente todas as perguntas e respostas relacionadas a um projeto do launchpad, para que eu possa importá-las para um novo site do fórum. Eu estava olhando para o launchpadlib mas não consigo acessar perguntas para um único projeto:

from launchpadlib.launchpad import Launchpad
ll=Launchpad.login_anonymously('')
# get the project; but it does not contain references to questions (it references bugs, translations etc, but not questions
pro=ll.project['woo'] 
# some (random?) question from launchpad, but not for the project I need
ll.questions

usando a API da Web também seria bom. Obter o conteúdo em qualquer formato legível por máquina (JSON, XML) é o objetivo.

    
por eudoxos 06.06.2015 / 12:26

1 resposta

2

A versão padrão da API 1.0 é estável, mas bastante antiga e não inclui muitos métodos que foram exportados mais recentemente. Para isso, você precisa usar a versão "devel" da API:

lp = Launchpad.login_anonymously('name of your script', version='devel')

Você pode usar métodos documentados nos documentos da API de desenvolvimento , especificamente project.searchQuestions :

project = lp.projects['foo']
questions = project.searchQuestions()

Você pode limitar isso de várias maneiras, conforme indicado pelos documentos da API, ou apenas pedir tudo como descrito acima. De qualquer forma, você receberá de volta uma coleção em lote de pergunta sobre os objetos nos quais você pode interagir e operar.

    
por Colin Watson 07.06.2015 / 22:30