2016-11-11 4 views
0

ファイル "release.conf"に "app_version"という変数があります。その値を使ってurllibを使ってurlからファイルをダウンロードする必要があります。私のpythonバージョンは2.6.6です。以下は、私がこれまで持っているものです。confファイルの変数をpythonスクリプトやファイルに呼び出す方法は?

urllibはインポートurlretrieve 輸入tarファイル

os.chdir('/tmp/') 
surl = "http://xxxx.com/artifactory/libs-release-local/com/xxxx/xxxx/tgz/xxxx.ear/{}/xxxx.ear-{}.tar.gz".format('app_version') 
slurl = "http://xxxx.com/artifactory/libs-release-local/com/xxxx/xxxx/tgz/xxxx.ear/{}/xxxx.ear-{}.tar.gz".format('app_version') 
surlobj = urllib.urlretrieve(surl, 'xxxx.ear-{}.tar.gz').format('app_version') 
slurlobj = urllib.urlretrieve(slurl, 'xxxx.ear-{}.tar.gz').format('app_version') 
sEAR = 'xxxx.ear-{}.tar.gz'.format('app_version') 
slEAR = 'xxxx.ear-{}.tar.gz'.format('app_version') 
tar = tarfile.open(sEAR) 
tar.extractall() 
tar.close() 
tar1 = tarfile.open(slEAR) 
tar1.extractall() 
tar1.close() 
os.remove(sEAR) 
os.remove(slEAR) 

から輸入OS インポートurllibは 私は私のコードが不完全であることを承知しています。不足しているコード行を追加する際に私を助けてください。

+0

_Iが私のコードは、私が思うCOMPLETE_であることを承知していますあなたは "完全ではない"という意味でした。 –

答えて

0

変数app_versionがapp_versionの値を持つように、release.confの内容を読み取るか評価する必要があります。したがって、app_versionはPython変数になります。次に、すべての書式設定関数をapp_version変数を使用するように変更する必要があります。例えば:

sEAR = 'xxxx.ear-{}.tar.gz'.format(app_version) 

APP_VERSIONがrelease.confのような標準のConfigParser型ファイルである場合APP_VERSIONが(変数VS)列

>>> 'xxxx.ear-{}.tar.gz'.format('app_version') 
'xxxx.ear-app_version.tar.gz' 
0

ある場合に一方の可変

>>> app_version="4.6." 
>>> 'xxxx.ear-{}.tar.gz'.format(app_version) 
'xxxx.ear-4.6..tar.gz' 

ありますこれは:

[section name] 
item1=foo 
item2=bar 

[another section name] 
item3=xyz 

そして、あなたは、このファイルに任意の項目の値を取得するために行うことができます。

import ConfigParser 

config = ConfigParser.ConfigParser() 
config.read('release.conf') 
app_version = config.get('section', 'item') 

をそして定期的な変数としてapp_versionを使用します。

surl = "http://whatever.com/xxxx.ear{0}.tar.gz".format(app_version) 
関連する問題