- 질문 게시판입니다.
Date 23/01/07 16:09:00
Name   Paraaaade
Subject   파일 기반 정보수집 방법 문의
사용자들로부터 일정한 양식을 갖춘 정보들을 입력받고
그 정보들을 모아서 엑셀 등을 활용하여 정리하고자 하는데, 방법적인 측면에서 질문드립니다.

웹서버나 sql 등을 쓰지않고 해결해야하는 상황입니다.

제가 생각한건 HTML 등을 이용하여 구글 폼과 같은 형식을 만들고 그 HTML파일을 사용자에게 제공(직접적인 파일 배포)하여 사용자가 데이터를 입력하도록 하는 것입니다. 사용자가 그 폼에 내용을 다 입력한 후 파일을 전송하면 그 파일들을 모아서 파이썬 등을 이용, 엑셀 형태로 정리 취합 하려구요.

이렇게하려는 이유는 내부망에서 웹서버/DB를 오픈하긴 어렵고 파일의 직접적인 전달은 수월하기 때문인데요.

관련내용을 찾다보니 HTML은 서버/DB 없이 활용하기엔 제한적인듯 한데, 어떤 방법/툴을 이용하면 쉽게 구현할 수 있을까요?

요약하자면 구글 폼과 같은 데이터 입력 시스템을 파일 베이스로 하고 싶습니다. (입력이 끝나고 SAVE 한 후 그 파일 전송) 폼 내에 파일을 첨부하는 기능도 있어야할 것 같구요.

나중에 파이썬 등으로 재가공하기 쉬우려면 뭘쓰면 좋을까요?

아래는 이해를 돕기위한 예시이고, 따옴표 속 내용이 사용자 입력 항목입니다.

양식 파일 다운로드 -> 데이터 입력 (구매 품목: "사과", 가격 : "3000", 증빙서류: "파일 첨부")  -> 저장 -> 저장파일 전송 -> DB화 정리



0


외부 망 접속이 불가하다면 내부망용 ftp서버에 파일을 올리라고 하는게 젤 빠르지않을까요 양식파일받아가라고 공지하고..
1
그 양식파일을 뭘로 만들면 좋을까 하는게 질문입니다. 단순 엑셀/워드로 하면 나중에 파이썬으로 추출하여 DB화 하기 어려울 것으로 생각되서요. (사용자의 양식 편집 가능성을 최소화해야 예외 케이스가 안나올 듯 합니다.)
cruithne
비슷한 짓을 했었는데 전 csv로 받았습니다. 일회성이라 csv로 받고 더듬더듬 파이썬 공부해서 어찌저찌 파일 하나로 묶었던 기억이 나네요
Paraaaade
음 csv는 입력을 제한할 방도가 없어서 피하고 싶거든요. 품목을 드랍다운 메뉴 중에 하나로 선택하게 한다던가, 가격에는 숫자만 넣을 수 있게 한다던가 하는 식이요.
덜커덩
python 쓰실거면 pandas로 값을 다루면 될 것 같고, 첨부파일은 openpyxl로 직접 뽑거나, AttachmentExtractor로 쉽게 뽑는다고 치면 xlsx로 쓰시면 될 것 같읍니다. 예상되는 단점이라면, OLE object에는 셀 귀속이나 순번에 대한 개념이 미약한걸로 기억하는데, 2개 이상의 파일 첨부가 필요하면 좀 문제가 있을 것 같읍니다.

AttanchmentExtractor: https://stackoverflow.com/questions/59810248/how-to-extract-ole-objects-from-excel-table-using-python
xlxs 의 유효성 검사 기능을 쓰면 위 댓글에 언급된 문제를 충분히 핸들링할 수 있으려나요? openxyl 은 서핑 중에 보긴했는데 얼마나 잘 될지, 어디까지 될지 좀 걱정스럽기도 해서요.

제일 이상적인건 HTML FORM 을 오프라인 기반으로 사용하는거 같긴한데 이 방법은 없나보네요.

다른 대안이 없으면 이 방법을 고려하겠습니다.
유효성 검사기능으로는 셀에 채워길 값에 대해 드롭다운이나 형식에 대한 체크 정도라면 괜찮을 것 같고, 파일은 아니오, (셀 귀속이 아니기 때문.) 라고 할 수 있겠읍니다.

양식의 정합성 체크가 문제라면 standalone webserver가 포함된 flask/django 같은걸로 윈도우 바이너리 만들고 배포한다 치면 사실 데이터는 어떤방식으로 만들어도 괜찮겠지요. 첨부파일이라면 대충 base64같은걸로 인코딩해서 json에 포함시키면 왠만한 key-value 데이터는 단일 파일로 다루기 괜찮겠지요. 근데 이건 배포를 위한 사전 작업이 상대적으로 커서 아마 안하실 것 같은데, 무엇을 중요하게 생각하시는지 제가 알지를 못하니...
Paraaaade
엑셀의 드랍다운 리스트도 셀귀속이 되긴하나보군요.

flask/django까지 가면 제 미천한 개발실력으로 커버가 안될거 같은데 이 부분이 제가 제일 원하던 방향인것 같긴하네요.
덜커덩
xlsx를 데이터 수집용으로 쓰는데는 클라이언트 파트를 위한 별도의 준비가 양식 파일외 다른게 필요없다는 것과, 그 양식을 채울 사람들의 환경에 왠만하면 오피스가 깔려있고 생각하는 경우지요.

비용이 문제라면 free-tier vps같은걸로 대충 하나 만들고 python으로 form 채울 페이지 만들고 받는걸 개인적으로 우선 고려할 듯 싶습니다. 데이터 저장형식이야 sqlite같은 embeddable sql로 해결하면 되고, 그게 아니면 파일로 저장해도 무리가 없구요. 파일 저장하는 스토리지가 걱정이라면, 양식 채우고 저장버튼 누르면 json으로 담아서 사용자가 다운로드받게 만들어서, 그 파일만 메일로 수집하시어도 되구요.
free-tier vps 는 뭘까요? 최종적으로는 json으로 받는 방법이 좀 괜찮아보이는데 제가 말씀해주시는 부분을 잘 못따라가겠네요.

free-tier vps가 뭔지, python으로 만든 form이 어떻게 연결되는지, embeddable sql 은 어디에 끼어드는건지, json을 고려하는 경우에 sql은 필요없는건지 등이요.
어음... free-tier vps는 클라우드 서비스 업체들이 공짜로 내주는 기초적 수준의 가상머신 인스턴스라고 이해하시면 되겠읍니다. 보통 1년 무료지만, 평생 무료 같은것도 있으니 조금만 찾아보시면 요건에 맞는 서비스를 구하실 수 있을겁니다.

파이썬에서 폼 페이지를 만들려면 적절한 웹 프레임워크가 필요할텐데, 이건 flask나 django로 쓰시면 되지만 코딩이 필요합니다. no code 솔루션이 있을지는 모르겠어요. 암튼 남은건 (1) 폼 페이지 만들고, (2) 사용자가 입력한 데이터를 POST 형식으로 받을 방법을 구현... 더 보기
어음... free-tier vps는 클라우드 서비스 업체들이 공짜로 내주는 기초적 수준의 가상머신 인스턴스라고 이해하시면 되겠읍니다. 보통 1년 무료지만, 평생 무료 같은것도 있으니 조금만 찾아보시면 요건에 맞는 서비스를 구하실 수 있을겁니다.

파이썬에서 폼 페이지를 만들려면 적절한 웹 프레임워크가 필요할텐데, 이건 flask나 django로 쓰시면 되지만 코딩이 필요합니다. no code 솔루션이 있을지는 모르겠어요. 암튼 남은건 (1) 폼 페이지 만들고, (2) 사용자가 입력한 데이터를 POST 형식으로 받을 방법을 구현, (3) 최종적으로 받은 데이터를 어떻게 저장하는지에 대한 문제로 다루시면 됩니다.

(1) sql로 테이블 만들어놓고 파일 수준으로 관리를 하려면 sqlite라는걸 쓰시면 되고,
(2) 아니면 대충 데이터를 JSON 형식으로 만들어서 파일로 저장하거나 사용자한테 반환해도 됩니다. json으로 만들면 sql을 고려할 필요는 당연히 없겠지요.

embeddable sql이라고 적어놓은건, sql을 다루기 위해 별도의 rdbms 서버를 띄울 필요가 없다는 뜻으로 쓴겁니다.
(1) -> django/flask
(2) -> python
(3) -> json/sql 이라는 말씀이시죠?

도움이 되었습니다. 감사합니다.

*vps의 경우 보안때문에 사용하기는 어려울 것 같으니, standalone webserver 형태를 고려해야할 것 같습니다.
뭔가 오해가 일어날것 같아서 대충 부연하자면, 처음부터 끝까지 python이 사용됩니다.
(1) HTML 템플릿으로 사용자한테 보일 내용을 작성 + python+django/flask로 앞에서 만든 HTML 템플릿을 사용자한테 뿌려주고, FORM DATA 검증하고, 값을 전달할 주소를 코딩
(2) python+django/flask로 POST 형식으로 들어오는 값을 다루도록 코딩. 이때 들어온 데이터를 최종적으로 json이나 sql로 저장하시면 됩니다.

여기서 스탠드얼론형식으로 바이너리를 배포하려면 좀 더 보셔야 할게 많을텐데, 암튼 얼개는 저렇게 되어 있으니 해야하는 포인트마다 매뉴얼이랑 스택오버플로 같은데를 찾아보셔서 해결하시면 되지않을까 싶습셉슾.. 암튼 천천히 해보세요!
Paraaaade
감사합니다!
목록
번호 제목 이름 날짜 조회 추천
공지 질문 게시판 이용 규정 11 토비 15/06/19 24496 4
16677 체육/스포츠첫 런닝 관련 초보 질문 사항 3 아재 25/04/16 157 0
16676 기타차단기 문제 7 왕킹멍 25/04/15 256 0
16675 체육/스포츠초 6 여아 극기체험용 등산가방추천부탁드립니다. 5 FTHR컨설팅 25/04/15 257 0
16674 의료/건강왼쪽 오른쪽 시력차이가 엄청 크네요 5 OneV 25/04/15 324 0
16672 기타소형차 중고 가격및 유지비 질문드립니다 5 셀레네 25/04/14 302 0
16671 IT/컴퓨터중국산 로봇청소기 사생활 위험 어떻게 보시나요 8 당근매니아 25/04/14 433 0
16670 가정/육아매트리스 추천을 부탁드립니다 :) 9 Broccoli 25/04/14 252 0
16669 법률양도세 계산 관련하여 질문 있습니다. 8 [익명] 25/04/14 296 0
16668 기타서울 남쪽에 아버지 모시고 식사할 곳 찾는 중입니다. 4 퍼그 25/04/14 270 0
16667 기타인터넷 질문입니다 5 김치찌개 25/04/14 209 0
16666 의료/건강건강보험 3자행위 신고 질문입니다. 2 [익명] 25/04/13 350 0
16665 기타1500 이하로 살 수 있는 중고 suv 추천해주십시오 11 개백정 25/04/13 628 0
16664 IT/컴퓨터컴퓨터 정리 프로그램 추천부탁드립니다. 홍차넷 선생님들!! 13 Mandarin 25/04/11 516 0
16663 기타일본여행 항공권 선택장애 질문드립니다 28 쉬군 25/04/10 655 0
16662 법률내용증명 보내는데 주소를 몰라요! 8 유니브로 25/04/10 615 0
16661 체육/스포츠튼튼한 수영복 브랜드 무엇이 좋나요? 16 열한시육분 25/04/10 530 0
16660 기타리클라이너 의자 추천 18 노는꿀벌 25/04/10 502 0
16659 의료/건강신경과? 신경외과? 어디 가야 할까요? 2 키위 25/04/10 436 0
16658 의료/건강신체에 왼편만 불편함을 느끼고 있습니다 어떤 병원을 가야하나요? 5 [익명] 25/04/09 554 0
16657 IT/컴퓨터맥북이 갑지기 먹통이되었습니다 3 FTHR컨설팅 25/04/08 288 0
16656 게임디비전류 게임 추천해주십시오 4 린디합도그 25/04/08 274 0
16655 여행해외(일본) 여행을 처음 가보려합니다 11 JUFAFA 25/04/08 478 0
16654 IT/컴퓨터현재 데스크탑을 델 미니pc가 대체할 수 있겠죠..? 29 even&odds 25/04/07 753 0
16653 IT/컴퓨터컴퓨터가 글씨큰모드?로 부팅됩니다 ㅜㅜ 18 even&odds 25/04/07 399 0
목록

+ : 최근 2시간내에 달린 댓글
+ : 최근 4시간내에 달린 댓글

댓글
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기