inflearn logo
강의

Course

Instructor

Essential Python-Hwp Automation Recipes for Office Workers

hwp 병렬 작업시 클립보드 충돌문제

58

ybhtad0763

20 asked

0

질문 남겨주셔서 감사합니다.

막히면 언제든 무엇이든 자주 질문 던져주세요.

수학/과학이나 알고리즘과는 달리

업무자동화 코딩은 고민해서 풀리는 경우가 정말 드뭅니다.

다시 말씀드리지만, 질문을 자주자주 남겨주세요.

저도 최대한 빠르게 회신 드리겠습니다.

당부드릴 두 가지가 있습니다.

① 가급적 구체적으로 설명해주세요.
② 특정 챕터 관련 질문 남겨주실 때는,
어느 챕터인지 알려주세요ㅜ

====================================

 

안녕하세요. 일코님

추운데 감기조심하시기 바랍니다.

 

 

자동화시, 표에다가 데이터를 채워넣는 작업이 조금 시간이 많이 걸리고 있습니다.

셀 단위로 데이터를 입력하고 다음셀로 넘어가고 << 이런식으로 하다보니까요..

따라서 판다스에서 불러온 데이터를 표로 복사해서

그대로 hwp 에 적용하고 싶은데, 가장 먼저 떠오른 것이 클립보드 복사 방식입니다.

이렇게하면 수월하지만, 현재 동일한 과정을 4개의 독립스레드에서 나눠서 진행하고있습니다. (4종류의 별개 단어장 작업중)

클립보드는 윈도우에서 전역으로 1개만 존재하는것 같아요..

작업 속도를 향상시키려면 엑셀데이터를 한글 표에 "표복사 ->붙여넣기" 방식으로 한번에 적용할 수 있는 방법이 있다면 참좋을 듯 한데, 이런 방법은 없을까요?

 

감사합니다!

python 한컴오피스

Answer 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

윤병현님께서 말씀하신 클립보드를 통한 다중 스레드 작업에서의 충돌 문제는 윈도우의 클립보드가 전역적으로 하나만 존재하기 때문에 발생하는 흔한 문제입니다. 각 프로세스에서 클립보드를 공유하다 보니, 데이터의 일관성을 보장하기 어렵기 때문입니다. 이를 해결하기 위해 몇 가지 방법을 소개드리겠습니다:

  1. 클립보드를 사용하지 않는 방법:

    • Pywin32 라이브러리pyhwp 등으로 HWP API를 사용하여 직접 데이터를 삽입하는 방법을 고려해 보세요. pywin32를 활용해 한글 및 엑셀의 COM 오브젝트를 제어함으로써 보다 동기화된 데이터 전송이 가능합니다.
  2. 파일을 통한 데이터 전환:

    • 엑셀 데이터를 CSV 형식으로 저장하고, 이를 한글에서 가져오도록 만들 수 있습니다. 이 경우 각 독립 스레드는 자신만의 CSV 파일을 관리하므로 충돌이 발생하지 않습니다.
  3. Temporary 데이터 사용:

    • 각 스레드가 자신만의 임시 파일을 만들어 사용하도록 하는 것입니다. 이 방법은 클립보드를 사용하지 않으면서 독립적인 데이터를 관리할 수 있습니다.
  4. 멀티프로세싱 사용:

    • 파이썬의 multiprocessing을 활용하여, 프로세스마다 별개의 파이프를 유지하고 데이터를 저장할 수 있습니다. 클립보드를 사용하지 않는 대신, 프로세스끼리의 병렬 작업이 가능해집니다.
  5. 비동기 프로그래밍:

    • 클립보드를 사용하지 않고, 비동기 I/O를 활용해 비효율성을 줄이는 방향으로 작업을 진행하는 방법입니다. 예를 들어 asyncio와 같은 라이브러리를 사용할 수 있습니다.

위의 방법들 중 적절한 방법을 시도하여 보시면, 병렬 작업 시에 클립보드 관련되는 문제를 피하면서 효율적으로 데이터를 삽입하실 수 있을 것입니다.

또한, 엑셀 데이터를 한글에 삽입하는 다양한 방법에 대한 질문을 참고하시면 보다 구체적인 구현 방식을 보실 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

섹션7과 같은 수학 수식을 백지에서 시작할 때 어떻게 만들 수 있을까요?

0

76

1

본문을 각주로 내리는 법

1

93

1

한글 자동화 삽도 삽입!!

1

384

2

한글 표 내부 위치 찾는 코드좀 알려주세요 ㅠㅠ

1

233

2

빈 문서를 새로 열때는 팝업이 안나오는데 기존 문서를 열면 팝업이 나옵니다

1

118

2

사무실 컴퓨터ㅠ

0

96

2

글자입력 여러번 실행기

0

67

1

현재 커서 문단에 아무런 내용이 없는지 확인하기

1

102

1

특정 스타일을 찾아 이동하는 방법

1

162

2

한/글 파일 open 시 '상위 버전에서...' 메세지 안 뜨게 하는 방법?

1

1108

1

win32com 으로 hwp 문자열 검색하기 문의

1

222

2

[응용] 엑셀문서 값을 필드에 입력하기 질

1

122

1

표 병합하기 관련

0

140

0

메타태그 삽입 자동화

0

191

1

스크립트 매크로 초기화 하고 싶습니다.

1

270

2

한글 창이 여러 개 존재할 때 pyhwpx 모듈로 접근하는 방법을 알고 싶습니다.

1

271

1

표안의 특정 필드에 있는 이미지를 복사하여 한글 외부에 저장하기

1

273

2

스타일 싹 다 지우고 바탕글로 통일하는 방법 문의드립니다.

1

283

0

하위의 여러 폴더 중 특정폴더의 사진만 추출하기

1

345

2

한글 수식을 자동으로 넣는 코드를 만들었는데, 수식 사이의 간격이 계속 벌어집니다.

1

657

1

보유 특허 검색 페이지에서 검색이 되지 않습니다.

1

137

1

hwp 페이지별 분할 저장하는 코드 관련 문의

0

447

0

한글 문서에 사용된 폰트명 추출

1

645

1

누름틀 적용항목 vs 엑셀항목 간의 순서관련 질문

1

555

2