質問編集履歴

1 コード等載せました

pekopeko

pekopeko score 11

2019/06/18 17:34  投稿

pythonを使ってAWSにAPIのリクエストを送ってAPIを動かしたい
### 前提・実現したいこと
pythonを使ってAWSにAPIのリクエストを送ってAPIを動かしたい
### 発生している問題・エラーメッセージ
AWSにpythonからリクエストを送る方法がわからない
AWS触り始めて数時間なのもあって正直リクエストに必要な前提条件もわからない状況です
アクセスキーとシークレットキーだけではリクエストは送れないのでしょうか?
前提条件から情報がまとまっているサイトがあれば教えていただきたいです。
```
エラーメッセージ
TypeError: must be str, not tuple  
```
### 該当のソースコード
SigV4Auth(credentials, SERVICE_NAME, region).add_auth(request)  
 
```python
ソースコード
import os  
import botocore  
import botocore.endpoint  
from botocore.awsrequest import AWSRequest  
from botocore.auth import SigV4Auth  
from botocore.credentials import Credentials  
 
aws_access_key_id = "xxx",  
aws_secret_access_key = "xxx",  
region = 'xxx'  
 
METHOD = "Post"  
URL = "xxx"  
SERVICE_NAME = "GetTaxInvoice"  
 
credentials = Credentials(aws_access_key_id, aws_secret_access_key)  
request = AWSRequest(method=METHOD, url=URL)  
SigV4Auth(credentials, SERVICE_NAME, region).add_auth(request)  
```
### 試したこと
以下のURLは試してみましたが、うまくいきませんでした。
https://dev.classmethod.jp/cloud/aws/botocore-signed-process/
https://stackoverflow.com/questions/39352648/access-aws-api-gateway-with-iam-roles-from-python
エラーメッセージは以下がよくでますがどの部分で引っかかっているのかはわかりません。。。
TypeError: must be str, not tuple
### 補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
  • Python

    38270 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • AWS(Amazon Web Services)

    5361 questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

  • API

    3768 questions

    APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る