使用Python分析EDI X12文件



我只想使用python解析EDI文件。我不确定哪种方式是解析这种EDI文件的最佳方式。或者我应该将此EDI转换为其他格式,然后进行解析吗?我不确定。请帮帮我。提前谢谢。

EDI X12文件示例如下。

ISA*00* *00* *01*00060902413PRD *ZZ*RT*200401*0044*U*00401*990002521*0*P*|~ 
GS*SH*0060902413B2B*004919486*20200401*0044*990002521*X*004010~ ST*856*990002521~ 
BSN*00*SHPMORSC4983493955*20200331*1647**TS~ 
HL*1**S~ 
REF*8X*ASN~ 
DTM*002*20200331*1647*18~ 
N1*ST*XYZ Ltd*91*WH3PL1LOC1~ 
N3*XYZ Ltd Logistics,4601 Stilwell Street~ 
N4*Kansas City**64120*US*SP*MO~ 
N1*SF*A Computers*91*CM1LOC1~ 
N3*A Computers Rd, 110~ 
N4*Ran**91730*US*SP*CA~ 
HL*2*1*O~ 
REF*79*60Y~ 
REF*DO*MORC493493955~ 
REF*CR*MRS4983493955~ 
HL*3*2*T~ 
MEA*PD*G*1.00*LB~ 
MEA*PD*HT*1.00*IN~ 
MEA*PD*LN*1.00*IN~ 
MEA*PD*WD*1.00*IN~ 
MAN*GM*134015~ 
HL*4*3*P~ 
MAN*GM*136096~ 
HL*5*4*I~ 
LIN*1*VP*1003200-01-R***CH*US~ 
SN1**10*EA**10*EA~ 
REF*P4*MAIN~ 
REF*JB*MAIN~ 
HL*6*2*T~ 
MEA*PD*G*1.00*LB~ 
MEA*PD*HT*1.00*IN~ 
MEA*PD*LN*1.00*IN~ 
MEA*PD*WD*1.00*IN~ 
MAN*GM*134015~ 
HL*7*6*P~ 
MAN*GM*132973~ 
HL*8*7*I~ 
LIN*2*VP*72004985-03-R***CH*US~ 
SN1**10*EA**10*EA~ 
REF*SE*AJ162918473~ 
REF*SE*AJ163222283~ 
REF*SE*AJ173032198~ 
REF*SE*AJ162915706~ 
REF*SE*AJ174446687~ 
REF*SE*AJ163229302~ 
REF*SE*AJ163228027~ 
REF*SE*AJ174450336~ 
REF*SE*AJ162404159~ 
REF*SE*AJ162913903~ 
REF*P4*239326~ 
REF*JB*MAIN~ 
PKG*F****LHR25 :ZI1, 226, PM: tii@, Recipient Contact: tilt7.~
PKG*F****02_0>25600~CTT*8~ 
SE*24069*990002521~ 
GE*1*990002521~ 
IEA*1*990002521~

正如我所看到的,您希望首先解析X12 856 TRANSACTION集,您需要决定是否以另一种EDI格式或任何其他CSV/XML格式进行解析。

根据我在Python解析方面的经验,我在Python目录中使用了轻量级解析器包。

我们遵循以下步骤。

1-为EDI 835 PARSER安装二进制python包。(pip安装edi-835-parser(

2-我们使用解析函数来运行二进制包

3-然后我们解析了目录路径上的函数。

path = '~/Desktop/my_directory_of_edi_files'
transaction_sets = parse(path)

4-然后,我们根据我们的中间件集成工具文件夹目录导入解析器函数。

from edi_835_parser import parse
path = '~/etc/my_directory_of_edi_files'
transaction_sets = parse(full directory path destination)
data = transaction_sets.to_dataframe()

5-然后将该pd.DataFrame保存为.csv/xml文件。

6-在以上内容之后测试包和解析器。

我们不确定这是否有助于您的查询,但您可以探索Python EDI集的二进制解析器包,这可能会有所帮助。

感谢

最新更新