Localizando todos os PPAs
Não há API para fazer isso e provavelmente não haverá, pois você não deve solicitar coleções enormes de objetos por meio das APIs do Python.
Localizando todos os PPAs com um determinado nome
AFAIK não é possível. Relate uma solicitação de recurso em https://bugs.launchpad.net/launchpadlib .
Localizando todos os PPAs pertencentes a um usuário com um determinado nome
Isso é possível, use launchpad.people['username'].ppas
, exemplo completo:
python
>>> from launchpadlib.launchpad import Launchpad
>>> launchpad = Launchpad.login_anonymously('just testing', 'production', '/home/user/tmp')
>>> [ ppa.name for ppa in launchpad.people['mvo'].ppas ]
[u'apt-clone-lucid', u'apt-fix-633967', u'apt-ftparchive-arch', u'apt-ftparchive-lucid', u'apt-ftparchive-srccache-backport', u'apt-gcc5', u'apt-https-fix', u'apt-lucid-chris', u'apt-precise', u'apt-src-ftparchive', u'apt-vivid', u'auto-upgrade-tester', u'debsigs-trusty', u'eglibc-trusty', u'freeglut-multiarch', u'gir-multiarch', u'hwe-eol', u'linux-firmware-nonfree', u'lp1347721', u'lp1371058', u'lucid-precise-upgrades', u'lucid-precise-upgrades2', u'oem', u'openoffice', u'ppa', u'public-test', u'python-apt', u'release-upgrader-apt', u'samba4', u'sdk', u'smem', u'synaptic', u'test-dependencies', u'ubuntu-sdk-libs', u'unattended-upgrades', u'upgrade-tests', u'wine', u'wsmancli']
Você pode pensar que pode combinar isso com a pesquisa de pessoas, mas não funcionará. Há um limite para quantas pessoas você pode receber (acho que são 50 ou algo assim).
Toda a API está documentada aqui: https://launchpad.net/+apidoc/1.0.html