Skip to content

Commit 733d1e9

Browse files
Raise on decode error (#292)
* Raise on decode error * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * changelog --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent d0de47a commit 733d1e9

File tree

2 files changed

+41
-6
lines changed

2 files changed

+41
-6
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
## Unreleased
22

3+
## v2.6.5 (2025/01/20)
4+
5+
- 오류 로그 출력 추간
6+
([#292](https://github.com/ryanking13/SRT/pull/292))
7+
38
## v2.6.4 (2025/01/05)
49

510
- 예매시 netfunnel 관련 오류 수정

SRT/srt.py

Lines changed: 36 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,12 @@ def _search_train(
266266
}
267267

268268
r = self._session.post(url=url, data=data)
269-
parser = SRTResponseData(r.text)
269+
try:
270+
parser = SRTResponseData(r.text)
271+
except Exception as e:
272+
raise SRTResponseError(
273+
f"Failed to reserve: invalid response ({r.text})"
274+
) from e
270275

271276
if not parser.success():
272277
message_code = parser.message_code()
@@ -299,7 +304,12 @@ def _search_train(
299304
next_dep_time = last_dep_time + timedelta(seconds=1)
300305
data["dptTm"] = next_dep_time.strftime("%H%M%S")
301306
r = self._session.post(url=url, data=data)
302-
parser = SRTResponseData(r.text)
307+
try:
308+
parser = SRTResponseData(r.text)
309+
except Exception as e:
310+
raise SRTResponseError(
311+
f"Failed to reserve: invalid response ({r.text})"
312+
) from e
303313

304314
# When there is no more train, return code will be FAIL
305315
if not parser.success():
@@ -477,7 +487,12 @@ def _reserve(
477487
)
478488

479489
r = self._session.post(url=url, data=data)
480-
parser = SRTResponseData(r.text)
490+
try:
491+
parser = SRTResponseData(r.text)
492+
except Exception as e:
493+
raise SRTResponseError(
494+
f"Failed to reserve: invalid response ({r.text})"
495+
) from e
481496

482497
if not parser.success():
483498
raise SRTResponseError(parser.message())
@@ -550,7 +565,12 @@ def get_reservations(self, paid_only: bool = False) -> list[SRTReservation]:
550565
data = {"pageNo": "0"}
551566

552567
r = self._session.post(url=url, data=data)
553-
parser = SRTResponseData(r.text)
568+
try:
569+
parser = SRTResponseData(r.text)
570+
except Exception as e:
571+
raise SRTResponseError(
572+
f"Failed to reserve: invalid response ({r.text})"
573+
) from e
554574

555575
if not parser.success():
556576
raise SRTResponseError(parser.message())
@@ -598,7 +618,12 @@ def ticket_info(self, reservation: SRTReservation | int) -> list[SRTTicket]:
598618
data = {"pnrNo": reservation, "jrnySqno": "1"}
599619

600620
r = self._session.post(url=url, data=data)
601-
parser = SRTResponseData(r.text)
621+
try:
622+
parser = SRTResponseData(r.text)
623+
except Exception as e:
624+
raise SRTResponseError(
625+
f"Failed to reserve: invalid response ({r.text})"
626+
) from e
602627

603628
if not parser.success():
604629
raise SRTResponseError(parser.message())
@@ -631,7 +656,12 @@ def cancel(self, reservation: SRTReservation | int) -> bool:
631656
data = {"pnrNo": reservation, "jrnyCnt": "1", "rsvChgTno": "0"}
632657

633658
r = self._session.post(url=url, data=data)
634-
parser = SRTResponseData(r.text)
659+
try:
660+
parser = SRTResponseData(r.text)
661+
except Exception as e:
662+
raise SRTResponseError(
663+
f"Failed to reserve: invalid response ({r.text})"
664+
) from e
635665

636666
if not parser.success():
637667
raise SRTResponseError(parser.message())

0 commit comments

Comments
 (0)