csvcut
カンマ区切りの.csvファイルで実行した後:
[root@server files]# csvcut -c title,mpn,overview,techspecs2,image_carousel_elargesrc syn_multi-image.csv > syn_scraped_cut.csv
エラーが発生します。
CSVには最大長の131072文字より長いフィールドが含まれています。 field_size_limitパラメーターを使用して最大値を増やすか、quoteing = csv.QUOTE_NONEを設定してください。
サイズは大きいが、最長フィールドの長さは65535文字にすぎず、これは許容される最大長よりかなり安全な距離です。
quoting=csv.QUOTE_NONE
何を設定しているのかわかりません。私はちょうど簡単なcsvkitコマンドを使って、それが私が知っているすべてです。
次のようなトピックや回答を読んでください。ここそしてここ特にcsvkitの文脈では、いかなる種類のソリューションも抽出できません。私は一般的にプログラミングに精通しておらず、csvkitとそのコマンドとオプションの使用に制限されています。
このエラーをどのように解決できますか?
答え1
これ文書csvkit
パラメータ-z
を調整できることを示しますFIELD_SIZE_LIMIT
。
したがって、かなり高い数字を使用することをお勧めします。
csvcut -z 2500000 -c title,mpn,overview,techspecs2,image_carousel_elargesrc syn_multi-image.csv > syn_scraped_cut.csv
答え2
CSVファイルをsqliteデータベースに変換するときに同じエラーが発生しました。テーブルには百万を超えるレコードが含まれています。テーブルには65535レコードを含むフィールドも含まれていません。解決策は、大きなテーブルをそれぞれ100,000レコードの小さなテーブルに分割し、それをsqliteデータベースにロードするスクリプトを作成することです。これ以上エラーは発生しませんでした。