首页 > 解决方案 > 使用 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 City64120 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 GM136096~ 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~ SN110 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@, 收件人联系方式:tilt7.~ PKG F** 02_0>25600~CTT 8~ SE 24069 990002521~ GE 1 990002521~ IEA 1*990002521~

标签: pythonparsingedix12

解决方案


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

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

我们遵循以下步骤。

1-为 EDI 835 PARSER 安装二进制 python 包。(pip install 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 集的二进制解析器包,这可能会有所帮助。

谢谢


推荐阅读