0

У меня есть файл в следующем форматеGAE ошибка bulkloader CSV разделителем

name- stuffinside -description name- stuffinside -description «ame- stuffinside -description

и я следующий бит как мой bulkloader код:

т

ransformers: 
- kind: storeItem 
connector: csv 
connector_options: 
encoding: utf-8 
column_list: [name, stuffinside,description] 
property_map: 
- property: key 
external_name: name export_transform: transform.key_id_or_name_as_string 

- property: name 
    external_name: name 

- property: stuffinside 
    external_name: stuffinside 
    import_transform: "lambda x: x.split('-')" 

- property: description 
    external_name: description 

проблема у меня в том, что я не могу получить его прочитайте файл , разделите его символом «-» и получите 3 разных части. Я хочу, чтобы это было как

name = x[0] 
stuffinside =x[1] 
description = x[2] 

Какое чтение из файла у меня нет проблем делать это, но я понятия не имею, как это сделать в этом приложении формат двигателя bulkloading. Любые идеи о том, что я делаю неправильно?

ответ

0

Вы уверены, что «-» является хорошим символом для использования в качестве разделителя полей? Похоже, что контент может содержать этот символ и испортить ваши поля.

конвертирование Будет ли «-» для вкладок, а затем следовать этому примеру:

От http://bulkloadersample.appspot.com/showfile/bulkloader.yaml:

# A sample using a TSV file with no header, specifying the columns here. 
- model: models.Visit 
    connector: csv 
    connector_options: 
    encoding: windows-1252 
    # TSV is specified using an extra parameter of the Python csv module. 
    import_options: 
     dialect: excel-tab 
    export_options: 
     dialect: excel-tab 
    # Columns here are a sequence in YAML, so can be specified in either block 
    # or flow style. This is short enough that I'll use flow style. 
    column_list: [visitid, customer, date, score, activities] 
    property_map: 
    - property: __key__ 
     external_name: visitid 
     export_transform: datastore.Key.name 
    - property: customer 
     external_name: customer 
     import_transform: transform.create_foreign_key('Customer') 
     export_transform: datastore.Key.name 
    - property: visit_date 
     external_name: date 
     import_transform: transform.import_date_time('%m/%d/%Y') 
     export_transform: transform.export_date_time('%m/%d/%Y') 
    - property: score 
     external_name: score 
     import_transform: float 
    - property: activities 
     external_name: activities 
     # This is a CSV list of strings inside the TSV file. 
     import_transform: "lambda x: x.split(',')" 
     export_transform: "','.join" 
+0

хорошо часть моей проблемы заключается в том, что часть текста имеет запятые между ними. Поэтому я хочу разбить его другим разделителем. , и я вручную просмотрел весь контент. нет - в нечетных местах. его только в тех местах, где я их поставил. имя-stuffinside-description – user2202316

+0

имя-stuffinside-описание новые линии и этот формат повторяется повсюду. – user2202316

Смежные вопросы