使用Python将数据从Google Cloud Storage加载到BigQuery时,如何强制忽略双引号?

时间:2018-11-17 01:03:32

标签: python google-bigquery google-cloud-storage

我们正在尝试将数据加载到BigQuery中,但是双引号引起了问题。

根据this question on SO,通过设置参数configuration.load.quote =“”可以忽略双引号。给出了如何从命令行执行此操作的示例。

我们尝试添加job_config.load.quote =“”,但收到一个错误消息,即job_config没有名为load的方法。

使用Python时如何设置load.quote参数?

到目前为止,这是我们的代码:

dataset_id = 'our_dataset_id'
dataset_ref = bigquery_client.dataset(dataset_id)

job_config = bigquery.LoadJobConfig()
job_config.skip_leading_rows = 0 
job_config.source_format = bigquery.SourceFormat.CSV

uri = 'gs://our/bucket/path.csv'

load_job = bigquery_client.load_table_from_uri(
    uri,
    dataset_ref.table('our_destination_table'),
    job_config=job_config
    )  
print('Starting job {}'.format(load_job.job_id))
load_job.result() 

1 个答案:

答案 0 :(得分:1)

我们发现命令行命令和Python API之间的参数不一致,这就是它们失败的原因。

添加此行:

job_config.quote_character = ""

以下是作业配置的Python参数的链接:https://googleapis.github.io/google-cloud-python/latest/bigquery/generated/google.cloud.bigquery.job.LoadJobConfig.html#google.cloud.bigquery.job.LoadJobConfig.quote_character