[英]RavenPack API_key is working in postman but NOT in python code
我正在嘗試使用這個 repo https://github.com/RavenPack/python-api
奇怪的是,API 與 POSTMAN 完美配合(它是一個用於自動化測試 API 開發和 Z29DC8666A24660F798 調用的工具)
這是代碼片段
from ravenpackapi import RPApi
from ravenpackapi import Dataset
api = RPApi(
api_key="_________" //correct api_key was intentionally removed for the post
)
ds = api.create_dataset(
Dataset(
name="New Dataset",
filters={
"relevance": {
"$gte": 90
}
},
)
)
print("Dataset created", ds)
這是錯誤消息。
我重復相同的 API 密鑰在同一設備和網絡上與 postman 一起使用。 只是他們的 python 庫讓我很難過。
Exception has occurred: APIException
Got an error 401: body was '{"endpoint":"datasets","errors":[{"type":"UnauthorizedError","reason":"Unauthorized: Must supply a valid API key"}]}'
File "C:\Users\XYZ\Documents\Python\RavenPackAPI.py", line 8, in <module>
ds = api.create_dataset(
問題可能是您沒有指向正確的 API 集群。 API 密鑰可能僅有權使用以前的產品版本。
要指向 Edge 集群 - 使用以下代碼設置您的 API:
from ravenpackapi import RPApi
api = RPApi(product="edge")
https://github.com/RavenPack/python-api/blob/master/ravenpackapi/examples/create_dataset_edge.py
此代碼是解決方案^^^ 我使用的是內部調用 RPA 集群的舊代碼片段:
from ravenpackapi import RPApi
from ravenpackapi import Dataset
#api = RPApi(api_key="L3KOJd7sjL7ZPsWXt4geSy")
api = RPApi(api_key="L3KOJd7sjL7ZPsWXt4geSy", product="edge")
ds = api.create_dataset(
Dataset(
**{
"name": "Edge Dataset",
"product": "edge",
"product_version": "1.0",
"frequency": "granular",
"fields": [
"timestamp_utc", "rp_document_id", "rp_entity_id", "entity_type", "entity_name",
"country_code", "event_relevance", "entity_sentiment", "event_sentiment", "topic", "group"
],
"filters": {
"$and": [
{"event_relevance": {"$gte": 90}},
{"country_code": {"$in": ["GB"]}},
{"event_sentiment": {"$nbetween": [-0.5, 0.5]}}
]
},
}
)
)
print("Dataset created", ds)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.