인프런 커뮤니티 질문&답변

포포님의 프로필 이미지
포포

작성한 질문수

파이썬으로 뭘 만들지? 남박사의 파이썬 알쓸파잡

SQLite3 데이터베이스 SELECT, INSERT, UPDATE, DELETE

선생님 혹시 SSV 파일을 json으로 변환할 방법이 있을까요?

작성

·

439

0

안녕하세요. 선생님 수업을 통해 크롤링까지는 성공했습니다.

HTTP POST 요청으로 받아왔는데요. 다만 Response가 넥사크로에서 사용하는 "SSV"형식으로 왔습니다.

 

SSV:UTF-8ErrorCode:string=0ErrorMsg:string=Dataset:ds_PageList_RowType_TAXNO:string(255)TAXIDX:string(255)MEMBNAM:string(255)TSDATE:string(255)TSTIME:string(255)ACQBID:string(255)CARD_NAME:string(255)HID:string(255)ACQHID:string(255)TERMID:string(255)MTRCNO:string(255)CDNO:string(255)AUTHNO:string(255)ISTMMON:string(255)CURRCODE:string(255)AMT1:bigdecimal(25)AMT2:bigdecimal(25)AMT3:bigdecimal(25)ACQDATE:string(255)DDCEDI:string(255)...... <생략>

이렇게 못생긴 데이터가 왔는데요.

이걸 json으로 파싱하고싶어서요. 이리저리 혼자서 아스키코드 찾아보고 US, RS 사용해서 어떻게든 파싱은 했는데, 제가 짠 로직이 맞나 싶어서요. (일단 작동은 되는데.. )

 

혹시 선생님이라면 어떻게 하실까 싶어서요.

이런걸 잘 파싱하려면 알고리즘을 공부해야되는걸까요?

아! 그리고 깃헙에 혹시 라이브러리가 있나 찾아봤는데요. 안나오더라구요. 이게 제일 슬펐어요.

 

그나저나 저런거 만드는 사람들은 정말 괴물같네요.. 저런걸 도대체 어떻게 만드는 걸까요?

 

(코드가 본문에 저렇게 붙여넣어지는 기능도 신기하네요.. 저런건 또 어떻게 만드나요?)

답변 2

0

남박사님의 프로필 이미지
남박사
지식공유자

질문하신 내용을 보아 공부를 재미있게 많이 하신 느낌이 듭니다.

일단 문의하신 SSV 에 대해 저도 검색을 좀 해보았습니다만 안타깝게도 라이브러리 같은건 아직 없는듯 합니다. (이참에 라이브러리를 만들어보는 도전을 해보시는 것도.... )

https://www.macfh.co.uk/JavaJive/ProgScriptWeb/JSSSV2JSON.html

그나마 가장 정보가 있는 쪽은 javascript에서 ssv 를 json으로 변환하는 내용에 대해선 찾을 수 있었습니다. 해당 사이트 같은데서 온라인 버전으로 동작시켜보고 문제없이 컨버팅이 된다면 해당 사이트의 js 파일을 분석해서 파이썬으로 작성해보는것도 좋을듯 합니다만..

이미 어느정도 코드를 작성하셨고 동작은 하는걸로 보아 나름 고민을 많이 해보신것 같긴합니다.

로직에 정답은 없습니다. 본인이 짜셨으니 계속 사용하다보면 뭐가 아쉬운지 아실테고 그 아쉬운 영역을 고민하다보면 더 좋은 업그레이드된 코드가 나오고.. 뭐 이런 부분의 반복이라 보입니다.

화이팅 하세요!!

포포님의 프로필 이미지
포포
질문자

안녕하세요 남박사님.

답변 감사드립니다.

 

SSV 계속 보다보니까, 어떻게 JSON으로 파싱해야할 지 보이더라구요.

결국 원하는 목적을 달성하여 실제로 사용중에 있습니다.

 

남박사님 수업 덕분에 빠르고 쉽게 해결 할 수 있었습니다.

0

안녕하세요, 인프런 AI 인턴입니다.
포포님, 크롤링 성공을 축하드려요!

SSV 포맷을 JSON으로 변환하는 것은 특정 포맷의 데이터를 파싱하여 새로운 형식으로 재구성하는 과정입니다. 다음과 같은 단계로 진행할 수 있습니다:

  1. SSV 데이터의 구분자(예: “”, “”)를 파악합니다.
  2. 문자열을 구분자로 분리하여 필드명과 값의 쌍을 추출합니다.
  3. 추출한 필드명과 값을 JSON 포맷에 맞게 key-value 형태로 맵핑합니다.
  4. 모든 데이터가 JSON 객체로 변환되면, JSON으로 인코딩하여 최종 결과물을 얻습니다.

이 과정은 파이썬의 문자열 처리 기능과 json 모듈을 사용하여 구현할 수 있습니다. 복잡한 알고리즘 보다는 문자열 조작과 데이터 구조에 대한 이해가 중요합니다.

라이브러리를 찾기 어려울 경우에는 직접 파싱 로직을 작성해야 하는데, 포포님이 이미 시도해본 것 같네요. 로직이 작동한다면 일단은 올바른 방향으로 가고 있는 것입니다. 하지만 코드 최적화나 에러 처리 등 보완할 부분이 있을 수 있으니, 더 효율적인 방법이 있는지 계속 탐색해 보는 것도 좋습니다.

GitHub에서 라이브러리를 찾지 못했다면, 해당 포맷이 널리 사용되지 않거나 특정 시스템에 한정된 포맷일 수도 있어서 그렇습니다. 이런 경우는 직접 파싱 로직을 개발하는 것이 일반적입니다.

제작자의 관점에서 보면, 이러한 기능을 만들기 위해서는 프로그래밍 언어와 데이터 처리 방법에 대한 깊은 이해가 필요하며, 문제 해결 능력과 창의적 사고도 중요합니다.

마지막으로, 코드를 본문에 붙여넣는 기능은 웹 프런트엔드 개발의 영역인데, HTML과 JavaScript를 통해 구현할 수 있습니다. 웹 개발을 더 알고 싶으시다면 관련 강좌를 찾아 학습해 보시는 것을 추천드립니다.

포포님의 프로그래밍 학습에 도움이 되길 바라며, 추가적인 질문이 있으시면 언제든지 문의해 주세요. 화이팅입니다!

포포님의 프로필 이미지
포포

작성한 질문수

질문하기