入力ファイルの内容を読み取り、出力ファイルに行ごと (行ごと) 形式で表示する必要がある python スクリプトを実行しようとしています。
Script is as below:
==============================
#!/usr/bin/python
# Usage : python loop_test1.py /home/cdn/test1.in /home/cdn/test11.out
from user_agents import parse
import sys,getopt
import csv
myopts, args = getopt.getopt(sys.argv[1:],"i:o:")
# open file
f = open (sys.argv[1],"r")
#sys.stdout = open(sys.argv[2], "w")
#sys.stdout=open(sys.argv[2],"w")
results= (user_agent.browser,user_agent.browser.family,user_agent.browser.version,user_agent.browser.version_string)
c = csv.writer(open(sys.argv[2],"wb"), delimiter="|")
c.writerows(results)
#f1.write("|".join(fields))
#Read whole file into data
data = f.readline()
# Print it
#line = 0
for line in iter(f):
# print line
#line + = 1
user_agent = parse(line)
print user_agent.browser # returns Browser(family=u'Mobile Safari', version=(5, 1), version_string='5.1')
print user_agent.browser.family,"|" # returns 'Mobile Safari'
print user_agent.browser.version # returns (5, 1)
print user_agent.browser.version_string # returns '5.1'
# Accessing user agent's operating system properties
print user_agent.os # returns OperatingSystem(family=u'iOS', version=(5, 1), version_string='5.1')
print user_agent.os.family # returns 'iOS'
print user_agent.os.version # returns (5, 1)
print user_agent.os.version_string # returns '5.1'
# Accessing user agent's device properties
print user_agent.device # returns Device(family='iPhone')
print user_agent.device.family # returns 'iPhone'
print user_agent.is_mobile # returns True
print user_agent.is_tablet # returns False
print user_agent.is_touch_capable # returns False
print user_agent.is_pc # returns False
print user_agent.is_bot # returns False
# Close the file
f.close()
このエラーが発生します:
トレースバック (最後の最後の呼び出し): ファイル "loop_test1.py"、11 行目、結果 =(user_agent.browser,user_agent.browser.family,user_agent.browser.version,user_agent.browser.version_string) NameError: name 'user_agent'定義されていません
これで私を助けてくれませんか?