小编Shi*_*kha的帖子

ImportError:无法导入名称pubsub_v1

我需要从google.cloud模块导入Pubsub_v1和bigquery.我已经安装了它并点击以下冻结节目:

gapic-google-cloud-pubsub-v1==0.15.4
google-cloud-bigquery==0.26.0
google-cloud-pubsub==0.27.0
proto-google-cloud-pubsub-v1==0.15.4
Run Code Online (Sandbox Code Playgroud)

在我的python脚本中,我将导入模块,如下所示:

import os 
from google.cloud import pubsub_v1 
import time 
import json 
from google.cloud import bigquery 
Run Code Online (Sandbox Code Playgroud)

脚本抛出的错误如下:

ImportError: cannot import name pubsub_v1
Run Code Online (Sandbox Code Playgroud)

如果我运行$ sudo pip install --upgrade google-cloud-pubsub那么它能够导入pubsub但是无法导入Bigquery.我需要两个模块.有人可以帮忙吗?

python google-bigquery google-cloud-pubsub

7
推荐指数
2
解决办法
5440
查看次数

如何在BIGQUERY加载API中跳过csv文件行

我正在尝试使用BigQuery API将CSV数据从云存储桶加载到BigQuery表我的代码是:

def load_data_from_gcs(dataset_name, table_name, source):
    bigquery_client = bigquery.Client()
    dataset = bigquery_client.dataset(dataset_name)
    table = dataset.table(table_name)
    job_name = str(uuid.uuid4())

    job = bigquery_client.load_table_from_storage(
        job_name, table, source)
    job.sourceFormat = 'CSV'
    job.fieldDelimiter = ','
    job.skipLeadingRows = 2

    job.begin()
    job.result()  # Wait for job to complete

    print('Loaded {} rows into {}:{}.'.format(
        job.output_rows, dataset_name, table_name))

    wait_for_job(job)
Run Code Online (Sandbox Code Playgroud)

它给了我错误:

400 CSV table encountered too many errors, giving up. Rows: 1; errors: 1.
Run Code Online (Sandbox Code Playgroud)

这个错误是因为,我的csv文件包含前两行作为标题信息,不应该加载.我已经给了job.skipLeadingRows = 2但它没有跳过前两行.是否有其他语法来设置跳过行?

请帮忙.

google-cloud-storage google-bigquery

3
推荐指数
1
解决办法
1007
查看次数