HTML/XML特殊字符导致换行

2024-05-23 16:30:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将分号分隔的CSV文件读入python。有一个列包含一些XML代码,在某些行中,这些代码包含特殊的实体,例如&lt;for <等等。中的分号会导致错误的换行符,从而导致某些行的列数不一致。有没有一种方法可以在不替换每个有问题的字符的情况下避免这种情况?你知道吗

下面是这样一个行的示例(为了可见性,我缩短了它):

20160210-12:45:43:047;C2ALLIANCE.EAM.EVENT.EAMEVENTREPORT.DPROB14;<?xml version="1.0"?><FAP:Message><eam:Data id="LOTTYPE">R&amp;D</eam:Data></FAP:Message>;EVENT;DPROB14;

实际上有5列,而&amp;中的分号会导致额外的中断,因此我的代码得到了错误的列数。你知道吗

我需要某些列并使用numpy:

data = numpy.genfromtxt('csvfile.csv', delimiter=";", dtype='str',usecols=(0, 1, 3), skip_header=1)

如果分号位于引号之间,那么可以使用pandas忽略它;但在这里,它完全被用作分隔符(我不是数据的作者)。你知道吗


Tags: 文件csv代码numpyeventmessagedata错误