Skip to content

Commit eca1dd8

Browse files
authored
extend version pattern (#294)
* extend version pattern * Update snapshot
1 parent 91411c9 commit eca1dd8

File tree

2 files changed

+50
-45
lines changed

2 files changed

+50
-45
lines changed

src/edi_energy_scraper/apidocument.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
_AhbPattern = re.compile(r".*\bAHB\b.*")
1919
_FormatPattern = re.compile(r".*\b(?P<format>[A-Z]{6})\b.*")
2020
_VersionPattern = re.compile(
21-
r"^.*?\b(?P<version>[GS]?\d+\.\d+[a-z]?)\b.*$"
21+
r"^.*?\b(?P<version>(?:Gas |Strom |[GS])?\d+\.\d+[a-z]?)\b.*$"
2222
) # assumption: version is always before datum
2323
_AlternativeKindPattern = re.compile(r"^(?P<name>\D+).*$")
2424
_StandPattern = re.compile(r".*Stand:\s*(?P<day>\d{1,2})\.(?P<month>\d{1,2})\.(?P<year>\d{4}).*")
@@ -155,7 +155,12 @@ def document_version(self) -> str | None:
155155
match = _VersionPattern.match(self.title)
156156
if match is None:
157157
return None
158-
return match.group("version")
158+
version = match.group("version")
159+
if "Gas" in version:
160+
return version.replace("Gas ", "G")
161+
if "Strom" in version:
162+
return version.replace("Strom ", "S")
163+
return version
159164

160165
@property
161166
def sparte(self) -> str | None:

unittests/__snapshots__/test_models.ambr

Lines changed: 43 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -821,30 +821,30 @@
821821
'MIG_PARTIN_1.0b_20230401_20230930_20230401_ooox_9824.docx',
822822
'MIG_PARTIN_1.0c_20231001_20240402_20231001_oooo_9829.pdf',
823823
'MIG_PARTIN_1.0c_20231001_20240402_20231001_ooox_9830.docx',
824-
'AHB_UTILMD_1.0a_20231001_20240725_20231001_oooo_10324.pdf',
825-
'AHB_UTILMD_1.0a_20231212_20240725_20231212_xoxo_10336.pdf',
824+
'AHB_UTILMD_G1.0a_20231001_20240725_20231001_oooo_10324.pdf',
825+
'AHB_UTILMD_G1.0a_20231212_20240725_20231212_xoxo_10336.pdf',
826826
'AHB_UTILMD_1.0a_20231212_20240725_20231212_xoxx_10337.docx',
827-
'AHB_UTILMD_1.0a_20231001_20231211_20230929_xoxo_10328.pdf',
827+
'AHB_UTILMD_G1.0a_20231001_20231211_20230929_xoxo_10328.pdf',
828828
'AHB_UTILMD_1.0a_20231001_20231211_20230929_xoxx_10333.docx',
829829
'AHB_UTILMD_4.1_20231001_20240402_20231001_oooo_10447.pdf',
830830
'AHB_UTILMD_4.1_20231001_20240402_20231001_ooox_10450.docx',
831831
'AHB_UTILMD_4.1_20231023_20231211_20231023_xoxo_10448.pdf',
832832
'AHB_UTILMD_4.1_20231023_20231211_20231023_xoxx_10451.docx',
833833
'AHB_UTILMD_4.1_20231212_20240402_20231212_xoxo_10449.pdf',
834834
'AHB_UTILMD_4.1_20231212_20240402_20231212_xoxx_10452.docx',
835-
'AHB_UTILMD_1.1_20231001_20240402_20231001_oooo_10527.pdf',
835+
'AHB_UTILMD_S1.1_20231001_20240402_20231001_oooo_10527.pdf',
836836
'AHB_UTILMD_1.1_20231001_20240402_20231001_ooox_10532.docx',
837-
'AHB_UTILMD_1.1_20231023_20231211_20231023_xoxo_10530.pdf',
837+
'AHB_UTILMD_S1.1_20231023_20231211_20231023_xoxo_10530.pdf',
838838
'AHB_UTILMD_1.1_20231023_20231211_20231023_xoxx_10535.docx',
839-
'AHB_UTILMD_1.1_20231212_20240402_20231212_xoxo_10531.pdf',
839+
'AHB_UTILMD_S1.1_20231212_20240402_20231212_xoxo_10531.pdf',
840840
'AHB_UTILMD_1.1_20231212_20240402_20231212_xoxx_10536.docx',
841-
'AHB_UTILMD_1.2_20240403_20240124_20240403_oooo_10547.pdf',
841+
'AHB_UTILMD_S1.2_20240403_20240124_20240403_oooo_10547.pdf',
842842
'AHB_UTILMD_1.2_20240403_20240124_20240403_ooox_10549.docx',
843-
'AHB_UTILMD_1.2_20240403_20240124_20231212_xoxo_10548.pdf',
843+
'AHB_UTILMD_S1.2_20240403_20240124_20231212_xoxo_10548.pdf',
844844
'AHB_UTILMD_1.2_20240403_20240124_20231212_xoxx_10550.docx',
845-
'AHB_UTILMD_1.2a_20240403_20240404_20240311_xoxo_10538.pdf',
845+
'AHB_UTILMD_S1.2a_20240403_20240404_20240311_xoxo_10538.pdf',
846846
'AHB_UTILMD_1.2a_20240403_20240404_20240311_xoxx_10543.docx',
847-
'AHB_UTILMD_1.2a_20240405_20240711_20240405_xoxo_10539.pdf',
847+
'AHB_UTILMD_S1.2a_20240405_20240711_20240405_xoxo_10539.pdf',
848848
'AHB_UTILMD_1.2a_20240405_20240711_20240405_xoxx_10544.docx',
849849
'MIG_UTILMD_G1.0a_20231001_20240725_20231001_oooo_10644.pdf',
850850
'MIG_UTILMD_G1.0a_20231001_20240725_20231001_ooox_10646.docx',
@@ -854,9 +854,9 @@
854854
'MIG_UTILMD_G1.0a_20231001_20231211_20230929_xoxx_10647.docx',
855855
'MIG_UTILMD_S2.0_20241023_20241023_20241023_oooo_10267.pdf',
856856
'MIG_UTILMD_S2.0_20241023_20241023_20241023_ooox_10268.docx',
857-
'AHB_UTILMD_1.2a_20240712_20240922_20240712_xoxo_10540.pdf',
857+
'AHB_UTILMD_S1.2a_20240712_20240922_20240712_xoxo_10540.pdf',
858858
'AHB_UTILMD_1.2a_20240712_20240922_20240712_xoxx_10545.docx',
859-
'AHB_UTILMD_2.0_20241023_20241023_20241023_oooo_10551.pdf',
859+
'AHB_UTILMD_S2.0_20241023_20241023_20241023_oooo_10551.pdf',
860860
'AHB_UTILMD_2.0_20241023_20241023_20241023_ooox_10552.docx',
861861
'MIG_UTILMD_S1.1_20231001_20240402_20231001_oooo_10656.pdf',
862862
'MIG_UTILMD_S1.1_20231001_20240402_20231001_ooox_10658.docx',
@@ -916,13 +916,13 @@
916916
'MIG_UTILMD_S1.0_20241023_20241023_20241023_ooox_10653.docx',
917917
'MIG_UTILMD_S1.1_20231001_20231022_20231001_oxoo_10657.pdf',
918918
'MIG_UTILMD_S1.1_20231001_20231022_20231001_oxox_10659.docx',
919-
'AHB_UTILMD_1.0_20241023_20241023_20241023_oooo_10334.pdf',
919+
'AHB_UTILMD_G1.0_20241023_20241023_20241023_oooo_10334.pdf',
920920
'AHB_UTILMD_1.0_20241023_20241023_20241023_ooox_10335.docx',
921921
'AHB_UTILMD_1.0a_20231001_20230928_20230629_xoxx_10332.docx',
922-
'AHB_UTILMD_1.0a_20231001_20230928_20230629_xoxo_10327.pdf',
923-
'AHB_UTILMD_1.0_20241023_20241023_20241023_oooo_10525.pdf',
924-
'AHB_UTILMD_1.1_20231001_20230928_20230629_xoxo_10529.pdf',
925-
'AHB_UTILMD_1.1_20231001_20231022_20231001_oxoo_10528.pdf',
922+
'AHB_UTILMD_G1.0a_20231001_20230928_20230629_xoxo_10327.pdf',
923+
'AHB_UTILMD_S1.0_20241023_20241023_20241023_oooo_10525.pdf',
924+
'AHB_UTILMD_S1.1_20231001_20230928_20230629_xoxo_10529.pdf',
925+
'AHB_UTILMD_S1.1_20231001_20231022_20231001_oxoo_10528.pdf',
926926
'AHB_UTILMD_1.1_20231001_20231022_20231001_oxox_10533.docx',
927927
'AHB_UTILMD_2.1e_20221001_20220718_20220706_xoxx_10313.docx',
928928
'AHB_UTILMD_2.1e_20221001_20220912_20220719_xoxx_10314.docx',
@@ -939,23 +939,23 @@
939939
'AHB_UTILMD_2.1e_20221001_20220926_20220913_xoxx_10315.docx',
940940
'AHB_UTILMD_2.1e_20221025_20230930_20221025_xoxo_10311.pdf',
941941
'AHB_UTILMD_2.1e_20221025_20230930_20221025_xoxx_10317.docx',
942-
'AHB_UTILMD_6.1b_20241023_20241023_20201218_xoxo_10370.pdf',
943-
'AHB_UTILMD_6.1c_20211001_20220930_20211001_oooo_10372.pdf',
944-
'AHB_UTILMD_6.1c_20211001_20220930_20210923_xoxo_10374.pdf',
945-
'AHB_UTILMD_6.1e_20221001_20230930_20221001_oooo_10376.pdf',
942+
'AHB_UTILMD_G6.1b_20241023_20241023_20201218_xoxo_10370.pdf',
943+
'AHB_UTILMD_G6.1c_20211001_20220930_20211001_oooo_10372.pdf',
944+
'AHB_UTILMD_G6.1c_20211001_20220930_20210923_xoxo_10374.pdf',
945+
'AHB_UTILMD_G6.1e_20221001_20230930_20221001_oooo_10376.pdf',
946946
'AHB_UTILMD_6.1e_20221001_20230930_20221001_ooox_10383.docx',
947-
'AHB_UTILMD_6.1e_20230330_20230930_20230330_xoxo_10382.pdf',
947+
'AHB_UTILMD_G6.1e_20230330_20230930_20230330_xoxo_10382.pdf',
948948
'AHB_UTILMD_6.1e_20230330_20230930_20230330_xoxx_10389.docx',
949-
'AHB_UTILMD_6.1e_20221001_20220705_20220603_xoxo_10377.pdf',
949+
'AHB_UTILMD_G6.1e_20221001_20220705_20220603_xoxo_10377.pdf',
950950
'AHB_UTILMD_6.1e_20221001_20220705_20220603_xoxx_10384.docx',
951-
'AHB_UTILMD_6.1e_20221001_20220718_20220706_xoxo_10378.pdf',
951+
'AHB_UTILMD_G6.1e_20221001_20220718_20220706_xoxo_10378.pdf',
952952
'AHB_UTILMD_6.1e_20221001_20220718_20220706_xoxx_10385.docx',
953-
'AHB_UTILMD_6.1e_20221001_20221024_20220719_xoxo_10379.pdf',
953+
'AHB_UTILMD_G6.1e_20221001_20221024_20220719_xoxo_10379.pdf',
954954
'AHB_UTILMD_6.1e_20221001_20221024_20220719_xoxx_10386.docx',
955-
'AHB_UTILMD_6.1e_20221025_20230126_20221025_xoxo_10380.pdf',
955+
'AHB_UTILMD_G6.1e_20221025_20230126_20221025_xoxo_10380.pdf',
956956
'AHB_UTILMD_6.1e_20221025_20230126_20221025_xoxx_10387.docx',
957957
'AHB_UTILMD_6.1e_20221001_20230329_20230127_xoxx_10388.docx',
958-
'AHB_UTILMD_6.1e_20221001_20230329_20230127_xoxo_10381.pdf',
958+
'AHB_UTILMD_G6.1e_20221001_20230329_20230127_xoxo_10381.pdf',
959959
'AHB_UTILMD_3.1b_20241023_20241023_20201218_xoxo_10421.pdf',
960960
'AHB_UTILMD_3.2_20211001_20220930_20211001_oooo_10439.pdf',
961961
'AHB_UTILMD_3.2_20211001_20220930_20210603_xoxo_10440.pdf',
@@ -1139,11 +1139,11 @@
11391139
'AHB_PARTIN_1.0e_20250606_99991231_20250606_ooox_9819.docx',
11401140
'MIG_UTILMD_G1.0a_20231212_99991231_20231212_oxox_10264.docx',
11411141
'MIG_UTILMD_G1.0a_20231212_99991231_20231212_oxoo_10262.pdf',
1142-
'AHB_UTILMD_1.0a_20231212_99991231_20231212_oxoo_10326.pdf',
1142+
'AHB_UTILMD_G1.0a_20231212_99991231_20231212_oxoo_10326.pdf',
11431143
'AHB_UTILMD_1.0a_20231212_99991231_20231212_oxox_10331.docx',
11441144
'MIG_UTILMD_S2.1_20250606_99991231_20250606_oooo_10651.pdf',
11451145
'MIG_UTILMD_S2.1_20250606_99991231_20250606_ooox_10660.docx',
1146-
'AHB_UTILMD_2.1_20250606_99991231_20250606_oooo_10553.pdf',
1146+
'AHB_UTILMD_S2.1_20250606_99991231_20250606_oooo_10553.pdf',
11471147
'AHB_UTILMD_2.1_20250606_99991231_20250606_ooox_10554.docx',
11481148
'MIG_UTILTS_1.1e_20250606_99991231_20250606_oooo_10706.pdf',
11491149
'MIG_UTILTS_1.1e_20250606_99991231_20250606_ooox_10707.docx',
@@ -1237,9 +1237,9 @@
12371237
'AHB_UTILMD_4.1a_20240403_20250605_20240403_ooox_10446.docx',
12381238
'AHB_UTILMD_4.1a_20240403_20250605_20240311_xoxo_10444.pdf',
12391239
'AHB_UTILMD_4.1a_20240403_20250605_20240311_xoxx_10445.docx',
1240-
'AHB_UTILMD_1.2a_20240403_20250605_20240403_oooo_10537.pdf',
1240+
'AHB_UTILMD_S1.2a_20240403_20250605_20240403_oooo_10537.pdf',
12411241
'AHB_UTILMD_1.2a_20240403_20250605_20240403_ooox_10542.docx',
1242-
'AHB_UTILMD_1.2a_20240923_20241017_20240923_xoxo_10541.pdf',
1242+
'AHB_UTILMD_S1.2a_20240923_20241017_20240923_xoxo_10541.pdf',
12431243
'AHB_UTILMD_1.2a_20240923_20241017_20240923_xoxx_10546.docx',
12441244
'MIG_UTILTS_1.1c_20240403_20250605_20240403_oxoo_10701.pdf',
12451245
'MIG_UTILTS_1.1c_20240403_20250605_20240403_oxox_10703.docx',
@@ -1253,7 +1253,7 @@
12531253
'XSD_1.1d_20250404_20241203_20241107_xoxo_10782.xsd',
12541254
'EBD_4.0b_20250404_20241213_20241106_xoxx_10786.docx',
12551255
'EBD_4.0b_20250404_20241213_20241107_xooo_10787.pdf',
1256-
'AHB_UTILMD_1.2a_20241018_20250605_20241018_xoxo_10791.pdf',
1256+
'AHB_UTILMD_S1.2a_20241018_20250605_20241018_xoxo_10791.pdf',
12571257
'AHB_UTILMD_1.2a_20241018_20241212_20241018_xoxx_10792.docx',
12581258
'MIG_UTILTS_1.1e_20250606_20241212_20241017_xoxo_10798.pdf',
12591259
'MIG_UTILTS_1.1e_20250606_20241212_20241018_xoxx_10799.docx',
@@ -1304,9 +1304,9 @@
13041304
'AHB_CONTRL_2.3n_20240403_20250605_20240403_oxoo_11000.xml',
13051305
'MIG_REQOTE_1.3_20231001_20250605_20231001_oxoo_11001.xml',
13061306
'MIG_REQOTE_1.3b_20250606_99991231_20250606_oooo_11002.xml',
1307-
'AHB_UTILMD_1.2a_20241018_20250605_20241018_xoxo_11003.xml',
1308-
'AHB_UTILMD_2.1_20250606_20241212_20250606_oooo_11004.xml',
1309-
'AHB_UTILMD_1.0a_20231212_99991231_20231212_oxoo_11005.xml',
1307+
'AHB_UTILMD_S1.2a_20241018_20250605_20241018_xoxo_11003.xml',
1308+
'AHB_UTILMD_S2.1_20250606_20241212_20250606_oooo_11004.xml',
1309+
'AHB_UTILMD_G1.0a_20231212_99991231_20231212_oxoo_11005.xml',
13101310
'MIG_UTILMD_S1.1a_20240712_20250605_20240711_xoxo_11006.xml',
13111311
'MIG_UTILMD_S2.1_20250606_20241212_20250606_oooo_11007.xml',
13121312
'MIG_UTILMD_G1.0a_20231212_99991231_20231212_oooo_11008.xml',
@@ -1342,7 +1342,7 @@
13421342
'AHB_UTILTS_1.0_20250606_99991231_20250606_oooo_11111.pdf',
13431343
'AHB_UTILTS_1.0_20250606_99991231_20250606_ooox_11112.docx',
13441344
'edienergyanwendungshilfebeispielevonberechnungsformelnfrdassolarpaket_1.1_20240403_99991231_20240403_oooo_11113.pdf',
1345-
'einfhrungsszenariozuas_1.0_20240402_20250401_20240402_oooo_11115.pdf',
1345+
'einfhrungsszenariozuas_G1.0_20240402_20250401_20240402_oooo_11115.pdf',
13461346
'codelistederartikelnummernundartikelid_5.5_20240403_99991231_20240403_oxoo_11116.pdf',
13471347
'codelistederartikelnummernundartikelid_5.5_20240403_99991231_20240403_oxox_11117.docx',
13481348
'activationdocumentfb_1.1d_20250606_99991231_20241203_xoxo_11118.pdf',
@@ -1379,10 +1379,10 @@
13791379
'EBD_4.0b_20250606_20250129_20241213_xoxo_11153.pdf',
13801380
'EBD_4.0b_20250606_20250131_20241213_xoxx_11154.docx',
13811381
'MIG_QUOTES_1.3a_20250606_99991231_20241213_xoxx_11155.docx',
1382-
'AHB_UTILMD_2.1_20250606_20250129_20241213_xoxo_11156.pdf',
1382+
'AHB_UTILMD_S2.1_20250606_20250129_20241213_xoxo_11156.pdf',
13831383
'AHB_UTILMD_2.1_20250606_20250129_20241213_xoxx_11157.docx',
1384-
'AHB_UTILMD_2.1_20250606_20250129_20241213_xoxo_11158.xml',
1385-
'AHB_UTILMD_1.2a_20241018_20250605_20251018_xoxx_11159.docx',
1384+
'AHB_UTILMD_S2.1_20250606_20250129_20241213_xoxo_11158.xml',
1385+
'AHB_UTILMD_S1.2a_20241018_20250605_20251018_xoxx_11159.docx',
13861386
'MIG_UTILMD_S2.1_20250606_20250129_20241213_xoxo_11160.pdf',
13871387
'MIG_UTILMD_S2.1_20250606_20250129_20241213_xoxx_11161.docx',
13881388
'MIG_UTILMD_S2.1_20250606_20250129_20241213_xoxo_11162.xml',
@@ -1424,14 +1424,14 @@
14241424
'AHB_ORDERS_1.0a_20250606_99991231_20250131_xoxo_11442.xml',
14251425
'anwendungsbersichtderprfidentifikatoren_3.1_20250606_99991231_20250131_xoxo_11443.pdf',
14261426
'EXCEL_3.1_20250606_99991231_20250131_xoxx_11444.xlsx',
1427-
'AHB_UTILMD_2.1_20250606_20250129_20250606_oxoo_11445.pdf',
1428-
'AHB_UTILMD_2.1_20250606_99991231_20250606_oxox_11446.docx',
1429-
'AHB_UTILMD_2.1_20250606_99991231_20250606_oxoo_11447.xml',
1427+
'AHB_UTILMD_S2.1_20250606_20250129_20250606_oxoo_11445.pdf',
1428+
'AHB_UTILMD_S2.1_20250606_99991231_20250606_oxox_11446.docx',
1429+
'AHB_UTILMD_S2.1_20250606_99991231_20250606_oxoo_11447.xml',
14301430
'MIG_UTILMD_S2.1_20250606_20250129_20250131_xoxo_11448.pdf',
14311431
'MIG_UTILMD_S2.1_20250606_99991231_20250131_xoxx_11449.docx',
14321432
'MIG_UTILMD_S2.1_20250606_99991231_20250131_xoxo_11450.xml',
14331433
'AHB_ORDERS_1.0a_20250606_99991231_20250131_xoxo_11451.pdf',
1434-
'AHB_UTILMD_2.1_20250606_99991231_20250606_oxoo_11452.pdf',
1434+
'AHB_UTILMD_S2.1_20250606_99991231_20250606_oxoo_11452.pdf',
14351435
'MIG_UTILMD_S2.1_20250606_99991231_20250131_xoxo_11453.pdf',
14361436
'AHB_COMDIS_1.0g_20250203_20250228_20250203_oooo_11455.xml',
14371437
'MIG_COMDIS_1.0f_20250203_20250228_20250203_oooo_11456.xml',

0 commit comments

Comments
 (0)