अजगर-उपयुक्त का उपयोग करके पैकेज विवरण कैसे प्राप्त करें?


9

मैं अंत उपयोगकर्ताओं के लिए आसानी से संकुल से निपटने के लिए एक आलेखीय कार्यक्रम बनाने की कोशिश कर रहा हूँ। हालाँकि, मुझे कुछ अन्य जानकारी के साथ पैकेज के विवरण को पुनः प्राप्त करने में समस्या आ रही है।

मैंने यहां अजगर-एप एपीआई देखा है और मैं समझ गया कि मुझे 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 प्रासंगिक हो सकता है।
मुरु २

जवाबों:


8

निम्न अजगर आदेश उपलब्ध होने पर आपको लंबा विवरण देना चाहिए:

$ 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अनुवाद बहुत मुश्किल है, इसलिए यहां अनुवाद नहीं किया जा सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.