如何使用python读取表中的swift消息MT103

如何使用python读取表中的swift消息MT103,python,swift-mt,Python,Swift Mt,我需要读一封像这样的短信MT103: {1:F01AAAAGRA0AXXX0057000289} {2:O1030919010321BBBBGRA0AXXX00570001710103210920N} {3:{108:MT103 003 OF 045}{121:c8b66b47-2bd9-48fe-be90-93c2096f27d2}} {4: :20:5387354 :23B:CRED :23E:PHOB/20.527.19.60 :32A:000526USD1101,50 :33B:USD

我需要读一封像这样的短信MT103:

{1:F01AAAAGRA0AXXX0057000289} 
{2:O1030919010321BBBBGRA0AXXX00570001710103210920N}
{3:{108:MT103 003 OF 045}{121:c8b66b47-2bd9-48fe-be90-93c2096f27d2}}
{4:
:20:5387354
:23B:CRED
:23E:PHOB/20.527.19.60
:32A:000526USD1101,50
:33B:USD1121,50
:50K:FRANZ HOLZAPFEL GMBH
VIENNA
:52A:BKAUATWW
:59:723491524
C. KLEIN
BLOEMENGRACHT 15
AMSTERDAM
:71A:SHA
:71F:USD10,
:71F:USD10,
:72:/INS/CHASUS33
-}
{5:{MAC:75D138E4}{CHK:DE1B0D71FA96}}
使用python(或R)转换为结构化表

过去有人遇到过同样的问题吗

谢谢你的帮助。

你看过图书馆吗?根据传单,它承诺您可以读取MT103文件并将其解析为本机Python对象。看起来不会比这容易多少了? [编辑]

在下面的代码示例中,我使用PyPi(
sudopip安装mt103
)为自己尝试了mt103库。然而,我手头没有有效的mt103示例文件,所以我得到了一些虚拟数据。这似乎有点奏效,除了我的文件没有银行操作代码。但是请注意,在提供有效但不正确的字符串时,我没有收到错误。库不检查mt103的有效性。当初始化后检查对象时,仅发现文本和标题属性为空时,它会显示

from mt103 import MT103

with open('mtfile', 'r') as myfile:
    mt103=myfile.read().replace('\n', '')

mt_text = MT103(mt103)

print("basic header: {}, bank op code: {}, complete message: {}".format(
    mt_text.basic_header,
    mt_text.text.bank_operation_code,
    mt_text.raw
))

在您拥有了对象并且它是有效的之后,您应该能够弄清楚如何将其放入指定的表中。

是的,我已经读过了。我发现在将swift消息传递给MT103函数时有一些困难。我不知道你是否试过,当然我犯了一个愚蠢的错误,但我不能让它工作!我自己也没有试过,但也许有一个关于你试过什么和遇到什么的详细问题是好的?我发现将字符串传递给MT103有困难,因为如果我将我上面写的消息放在一行中(因此删除新行),我可以将其保存为string对象,但MT103不起作用,否则,由于新行,我无法将其保存为字符串。我添加了一些我自己做的测试。希望这会有所帮助。