的BigQuery得到了关键字参数“项目”
问题描述:
我试图与谷歌的BigQuery连接,但我得到这个错误多个值:的BigQuery得到了关键字参数“项目”
ERROR api Query failure: __init__() got multiple values for keyword argument 'project'
这是怎么了我做:
from google.cloud import bigquery
CREDENTIALS_BIGQUERY = dotenv.get_key(dotenv_path, 'CREDENTIALS_BIGQUERY')
bigquery_client = bigquery.Client.from_service_account_json(CREDENTIALS_BIGQUERY, 'project-id123')
CREDENTIALS_BIGQUERY是他的JSON:
{
"type": "service_account",
"project_id": "roas-xxx",
"private_key_id": "xxxx",
"private_key": "xxxxn-----END PRIVATE KEY-----\n",
"client_email": "[email protected]",
"client_id": "xxxx",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/cxxxerts",
"client_x509_cert_url": "https://www.googleapis.com/xxx"
}
答
只是解决一个小错误
bigquery.Client.from_service_account_json(CREDENTIALS_BIGQUERY, project='project-id123')
这个问题是from_service_account_json函数只接受1未命名的参数,所有其它参数应该传递作为命名