python-apt를 사용하여 패키지 설명을 얻는 방법은 무엇입니까?


9

최종 사용자를 위해 패키지를 쉽게 처리 할 수있는 그래픽 프로그램을 만들려고합니다. 그러나 다른 정보 외에도 패키지 설명을 검색하는 데 문제가 있습니다.

나는 python-apt API를 보았고 apt.package.Version() 클래스 를 다루어야한다는 것을 이해했다 .

그러나 내가 그것을 사용하려고했을 때, 내가 가진 모든 것은 다음과 같은 오류입니다.

Traceback (most recent call last):
File "./myprogram", line 6, in <module>
print package.description
File "/usr/lib/python2.7/dist-packages/apt/package.py", line 374, in description
dsc = self._translated_records.long_desc
File "/usr/lib/python2.7/dist-packages/apt/package.py", line 315, in _translated_records
desc_iter = self._cand.translated_description
AttributeError: 'list' object has no attribute 'translated_description'

따라서 apt.package.Version () 클래스에 대한 실행 예제를 만들 수있는 본문이 있습니까?

감사!


자세한 설명이 있는지 확인하십시오 ( apt-cache show일부 패키지에 대해). 설명서에 자세한 설명 이 있으므로 askubuntu.com/a/558389/158442 가 관련 될 수 있습니다.
muru

답변:


8

다음 python 명령은 사용 가능한 경우 자세한 설명을 제공해야합니다.

$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import apt
>>> cache = apt.Cache()
>>> pkg = cache['python2.7']
>>> pkg
<Package: name:'python2.7' architecture='amd64' id:1247L>
>>> pkg.versions
<VersionList: ['2.7.6-8']>
>>> pkg.versions[0]
<Version: package:'python2.7' version:'2.7.6-8'>
>>> pkg.versions[0].description
u'Python is a high-level, interactive, object-oriented language. Its 2.7 version
includes an extensive class library with lots of goodies for network programming, 
system administration, sounds and graphics.'
>>> 

참고 : 내 로케일이 설정되어 LANG=en_US.UTF-8있으므로 번역 된 문자열은 문제가되지 않을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.