1

私は inti python 辞書に変換した URL からの json データを持っており、for ループを使用して、url によって提供された json データから情報を抽出しています。 forループ内のURLからjsonデータを取得するために使用している変数は、設定ファイルから取得します。これは任意のタイプにすることができます。

いくつかの変更を追加する必要がある場合は、ソースコードではなく設定ファイルで行うため、これを行う必要があります


from ConfigParser import SafeConfigParser

urllib2 をインポート

シンプルなjsonをインポート

responseFromMetataste = urllib2.urlopen("http://metataste.com/do? action=srch&want=gnr_4dd3faa9237e1e43c5a416f9&nmht=2&ofst=0&card=appMovieCard").read()

parseResponseString = simplejson.loads(responseFromMetataste)

パーサー = SafeConfigParser()

parser.read("settings.txt")

k=parseResponseString['results']

for y in range(len(k)):
print "Movie "+str(y+1) print ("Movie_Title :"+(k[y][parser.get('Details','Trailer')][0 ][parser.get('Movie_Details','M_Title')]))

if (parser.get('Movie_Flags','M_url'))=='True' :
    print ("Movie_URL       :"+(k[y][parser.get('Details','Trailer')][0][parser.get('Movie_Details','M_url')]))

if (parser.get('Movie_Flags','M_Id'))=='True' :
    print ("Movie_ID        :"+(k[y][parser.get('Details','Trailer')][0][parser.get('Movie_Details','M_Id')]))

if (parser.get('Movie_Flags','M_Lang'))=='True' :
    print ('Movie_Lang      :'+(k[y][parser.get('Details','Ttl')][parser.get('Details','Languages')][0]))

if (parser.get('Movie_Flags','M_summary'))=='True' :
    print ('Movie_Summary   :'+(k[y][parser.get('Details','Synopsis')]))

if (parser.get('Movie_Flags','M_Genre'))=='True' :
    print ('Movie_Genre     :'+(k[y][parser.get('Details','Genre')][0][parser.get('Movie_Details','M_Genre')]))

if (parser.get('Movie_Flags','Yr_Release'))=='True':
    print ('Year_of_release :'+str(k[y][parser.get('Details','Yor')]))

if (parser.get('Movie_Flags','Poster_Url'))=='True' :
    print ('poster_url      :'+str(k[y][parser.get('Details','Posters')][2][parser.get('Movie_Details','Poster_Url')]))

XXXX...................................................XXXX...... ...................................XXXX

settings.txt ファイル

【詳細】 Ttl=ttl

トレーラー=トレーラー

言語=lngs

Synopsis=synp

ジャンル=gnr

年=年

ポスター=ポスター

[ムービー_フラグ]

M_タイトル=True

M_url=True

M_Id=真

M_Lang=True

M_summary=真

M_ジャンル=True

Yr_Release=真

Poster_Url=True

【動画詳細】

M_タイトル=ttl

M_url=url

M_Id=_id

M_Lang=lngs

M_summary=真

M_ジャンル=nm

Yr_Release=年

Poster_Url=url

新しい設定ファイル

var1=true:title:'sometitle'

var2=true:title:'sometitle'

var3=true:title:'sometitle'

これらの値は、 for ループ中および for ループ中に設定ファイルから読み取る必要があります。 var1 、 var2 、 var3 ....... を関数に渡してこれらの値をフェッチする必要があり、 python を使用してこれらすべての手順を実行する必要があります。

4

1 に答える 1

0

記載されている任意のファイル タイプを使用できます。それは、効率の観点から、書きたいコードの量にのみ依存します。あなたもコードを維持していると思います!

私の提案は、csvファイルを使用することです。行を読み取り、「,」コンマ文字で分割します。split メソッドは、var1、var2、... などを含む配列を提供する必要があります。

このようにして、その配列をループして、他のメソッドに渡すこともできます。

于 2012-10-03T09:35:40.397 に答える