求DynamoDb2连接教程 - 获取错误

时间:2014-07-11 20:42:59

标签: python boto amazon-dynamodb

我开始使用dynamodb2了。

我需要做以下事情: 1.连接发电机 2.按名称访问表 3.扫描它们以获取特定值

我的问题主要是寻找一个很好的例子。我还没有找到任何有用的东西。

我使用以下示例(请参阅:http://boto.readthedocs.org/en/latest/dynamodb2_tut.html):

def process_segment(segment=0, total_segments=10):
    # This method/function is executed in each thread, each getting its
    # own segment to process through.
    conn = boto.dynamodb2.connect_to_region(
        'us-east-1',
        aws_access_key_id=AWS_ACCESS_KEY_ID,
        aws_secret_access_key=AWS_SECRET_ACCESS_KEY
    )
    table = Table('users', connection=conn)

我有:

_aws_access_key_id=awsAccess.aws_access_key_id
_aws_secret_access_key=awsAccess.aws_secret_access_key
_aws_dynamo_region=awsAccess.aws_dynamo_region
credentials ={_aws_access_key_id,_aws_secret_access_key}

decompiled_dynamo_table="decompiled_swfs"
text_dynamo_table="decompiled_swf_text"
image_dynamo_table="images_decompiled"
_dynamo_table="decompiled_swf_text"

dynamoConn= dynamodb2.connect_to_region(region_name=_aws_dynamo_region,aws_access_key_id=_aws_access_key_id,aws_secret_access_key=_aws_secret_access_key)

我收到了这个错误:

  

pydev调试器:启动(pid:95304)回溯(最近一次调用   最后):文件   “/Applications/eclipse/plugins/org.python.pydev_3.4.1.201403181715/pysrc/pydevd.py”   1844年,在       debugger.run(setup ['file'],None,None)文件“/Applications/eclipse/plugins/org.python.pydev_3.4.1.201403181715/pysrc/pydevd.py”,   第1372行,在运行中       pydev_imports.execfile(文件,全局,本地)#执行脚本文件   “/Users/tai/Documents/workspace/testSelenium/testS/init.py”,line   23,在       import dynamoAccess File“/Users/tai/Documents/workspace/testSelenium/testS/dynamoAccess.py”,   第26行,在       swfTable =表(decompiled_dynamo_table,connection = dynamoConn)文件   “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/boto/dynamodb2/table.py”   107行,在 init 中       self.connection = DynamoDBConnection()File“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/boto/dynamodb2/layer1.py”,   第183行,在 init 中       super(DynamoDBConnection,self)。 init (** kwargs)文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/boto/connection.py”,   第1073行, init       profile_name = profile_name)文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/boto/connection.py”,   第572行, init       host,config,self.provider,self._required_auth_capability())文件   “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/boto/auth.py”   第883行,在get_auth_handler中       '检查你的凭证'%(len(名字),str(名字)))boto.exception.NoAuthHandlerFound:没有处理程序准备好   认证。检查了1名处理程序。 ['HmacAuthV4Handler']检查   你的凭据

我检查了_aws_secret_access_key,_aws_access_key_id等的值是否正确。他们是字符串。有什么不同?有人知道一个更好的例子或如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

发现我的错误。

我正在向东进入区域,但是dynamodb2 lib正在寻找us-east-1。

如果您遇到类似这样的错误,可能是问题不是您的ID /密钥,因为这些已经过测试,而不是检查位置本身。