簡體   English   中英

如何使用python讀取表格中的快速消息MT103

[英]How to read a swift message MT103 in a table with python

我需要閱讀這樣的快速消息 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)進入結構化表。

過去有人遇到過同樣的問題嗎?

感謝您的幫助。

你見過這個 PyPi庫嗎? 根據傳單,它承諾您可以讀取 MT103 文件並將其解析為原生 Python 對象。 似乎不會比這容易得多? [編輯]

在下面的代碼示例中,我使用 PyPi 為自己嘗試了 mt103 庫( sudo pip install mt103 )。 然而,我手頭沒有有效的 mt103 示例文件,所以我得到了一些虛擬數據。 這似乎有點奏效,除了我的文件沒有 bank_operation_code。 但是請注意,在提供有效但不正確的字符串時,我沒有收到錯誤消息。 該庫不檢查 mt103 有效性。 它顯示在初始化后檢查對象時才發現 text 和 header 屬性為空。

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
))

在您擁有對象並且它是有效的之后,您應該能夠弄清楚如何將其制作成指定的表格。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM