我想在python3中读取大量DBASE IV .dbf文件。它们每天都在生产,我正在寻找一种在AWS Lambda中处理它们的方法,因此需要python脚本。 dbfread是我尝试过的解决方案之一。不幸的是,由于出现以下错误,我无法从文件中读取数据:
init 中的文件“ C:\ Users \ sa \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ dbfread \ dbf.py”,第122行 self._read_field_headers(infile)
文件_read_field_headers中的第224行“ C:\ Users \ sa \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ dbfread \ dbf.py” 字段= DBFField.unpack(sep + infile.read(DBFField.size-1))
第36行的文件“ C:\ Users \ sa \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ dbfread \ struct_parser.py”解压 items = zip(self.names,self.struct.unpack(data))
错误:解压缩需要32个字节的缓冲区
我尝试使用dbfread模块,dbfpy,tablib和许多其他模块感到很不开心。
def printdbfread(filename):
table = DBF(filename, encoding='iso-8859-1')
#table = DBF(filename, parserclass=TestFieldParser)
for record in table:
print(record)
在上述方面的任何帮助或指向可能读取有问题文件的其他模块的任何指针,将不胜感激。