我想解决在使用 AWS Glue 爬网程序爬取 .csv 文件中的数据时出现的常见问题。
简短描述
导致 AWS Glue 爬网程序中内置 .csv 分类器出错的一些常见问题包括:
- 第一行数据未指定为标题,然后数据显示通用列标题,例如 col1 和 col2。
- 无法识别包含在两个引号之间的数据,例如“ABC”和“XYZ”。
解决方法
创建自定义 .csv 分类器,然后将自定义分类器添加到新的 AWS Glue 爬网程序中。
创建自定义分类器
使用 AWS Glue 控制台创建自定义分类器。使用以下参数定义分类器:
- 对于 Classifier name(分类器名称),输入唯一的名称。
- 对于 Classifier type(分类器类型),选择 CSV。
- 对于 Column delimiter(列分隔符),选择逗号符号。
- 对于 Quote symbol(引号符号),选择引号符号。
- 对于 Column headings(列标题),选择 Has headings(有标题)。
(可选)如果您知道列的名称,请输入标题名称。确保用逗号分隔名称。
**注意:**默认情况下,.csv 分类器使用 Open CSV SerDe 作为其序列化库。Open CSV SerDe 支持包含双引号和您指定的标题的数据。有关详细信息,请参阅 CSV SerDe 库。
将您的自定义分类器添加到新的 AWS Glue 爬网程序
创建新的 AWS Glue 爬网程序。使用以下参数配置爬网程序:
- 对于 Data source(数据源),选择您的 .csv 文件所在的数据存储。
- 对于 Include path(包含路径),输入 .csv 文件的包含路径。
- 对于 Custom classifiers(自定义分类器),将您创建的自定义 .csv 分类器添加到分类器列表中。
- 对于 IAM Role(IAM 角色),选择具有爬取 .csv 文件所需权限的 AWS Identity and Access Management (IAM) 角色。