Python从argparse模块输出AttributeError

时间:2015-11-21 13:23:27

标签: python attributes argparse attributeerror

Python出现以下错误:

Traceback (most recent call last):
  File "C:\Python34\Google_Map.py", line 246, in <module>
    main()
  File "C:\Python34\Google_Map.py", line 232, in main
    username = args.username
AttributeError: 'Namespace' object has no attribute 'username'enter code here

我想我必须错误地通过了这个论点。请参阅以下代码段:

    def main():
# parse arguments
parser = argparse.ArgumentParser(description='InstaRaider')
parser.add_argument('-styledbyafrica', help='Instagram username')
parser.add_argument('-c:\python34\pikshor images\styledbyafrica', help='Where to save the images')
parser.add_argument('-n', '--num-to-download',
                    help='Number of posts to download', type=int)
parser.add_argument('-l', '--log-level', help="Log level", default='info')
args = parser.parse_args()
username = args.username
directory = op.expanduser(args.directory)

raider = InstaRaider(username, directory,
                     num_to_download=args.num_to_download,
                     log_level=args.log_level)

1 个答案:

答案 0 :(得分:2)

我建议您查看Python文档中的Argparse Tutorial

它引发AttributeError的原因是因为您使用的属性名称与您在argparser中使用的参数名称不同。

在您分享的错误中,您尝试使用styledbyafrica获取username参数。这显然是行不通的。该目录也会给你带来问题。