유료 매크로 프로그램 다운로드
http://ngmsoftware.com/bbs/board.php?bo_table=product_review
엔지엠소프트웨어
엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.
www.ngmsoftware.com
#매크로 #메크로 #매크로프로그램 #엔지엠소프트웨어 #엔지엠에디터 #엔지엠플레이어 #비활성매크로 #하드웨어매크로 #기계식매크로 #마우스광클릭 #키보드매크로 #이미지서치 #이미지매치 #블로그 #카페 #인스타그램 #유튜브 #소셜네트워크 #카카오톡 #텔레그램 #자동화
안녕하세요. 업무 자동화 RPA 매크로 오토픽입니다.
몇몇분들의 요청으로 네이버 블로그나 카페 또는 티스토리와 같은 SNS의 게시글에 자동으로 댓글을 다는 매크로 프로그램을 만들어 보겠습니다.
윈도우의 웹이라면 인스타그램이나 페이스북과 같은 SNS도 동일한 로직으로 만들 수 있습니다.
물론, 구성은 다르겠지만요.
오토픽 매크로를 실행하고, 웹 연결 액션을 스크립트에 추가하세요.
멀티 다클라 또는 다계정으로 실행하기 위해 웹 자동화 이름을 설정해야 합니다.
지금 만드는 스크립트는 하나만 만들고 있지만, 최종적으로 완성된 매크로 프로그램은 멀티로 실행되도록 처리할겁니다.
속성창에서 실행 옵션 추가를 클릭하고, 문자열 컬렉션 편집기에 아래 내용을 입력하세요.
- --user-data-dir=C:\chrome\profile 1
user-data-dir을 설정하면 쿠키 정보를 사용할 수 있습니다. 쿠키를 사용한다는 의미는 사용자의 세션(Session) 정보를 유지할 수 있다는 뜻입니다.
멀티 다클라 웹 자동화 매크로에서는 웹 이름과 user-data-dir이 모두 달라야 합니다.
그래서, web1, web2, web3과 같이 늘려야 하고 profile 1, profile2와 같이 늘려 나갈겁니다.
이번에는 웹브라우저가 실행되었으니 아래와 같이 웹브라우저의 위치와 크기를 조정해줍시다.
웹브라우저를 실행했고, 창 위치와 크기도 조정했습니다. 이제는 자동으로 댓글을 달고 싶은 티스토리로 이동해야 합니다.
웹 제어 액션의 속성에서 액션 값에 댓글을 달고 싶은 주소를 입력하세요.
티스토리에 접속하면 아래와 같이 글 목록을 확인할 수 있습니다.
블로그마다 설정이 다르겠지만, 인공지능 RPA 매크로 오토픽의 블로그는 페이지당 6개의 게시글이 표시됩니다.
티스토리의 글 목록은 div 태그로 이루어져 있습니다. 그리고, 목록을 감싸고 있는 div가 있는데요.
이 div안에 목록을 가져와야 합니다. 아래와 같이 div의 xpath를 설정하세요.
그리고, 선택한 xpath 안의 자식 엘리먼트(Element: 요소)를 가져와야 하기 때문에 자식 엘리먼트 목록을 True로 변경하세요.
- //*[@id="content"]/div[3]
데이터 처리는 위에서 가져온 복잡한 엘리먼트 목록에서 특정 요소의 특성(Attribute) 또는 속성(Property)을 가져올 수 있게 해줍니다.
우리가 알고 싶은 내용은 글 목록에서 a 태그의 href 특성 값입니다. 따라서, 아래와 같이 설정하면 원하는 값을 추출할 수 있습니다.
매크로를 실행하고 결과를 확인해보면 글 주소를 모두 가져온걸 알 수 있습니다.
총 6개의 링크를 목록으로 가져왔습니다.
글 주소들을 모두 가져왔으면 하나씩 순환하면서 댓글을 달아야 합니다. 아래와 같이 포이치 반복 액션을 추가하세요.
포이치 반복의 도움말을 보면 아시겠지만, 이 액션은 목록(배열)을 하나씩 반복시켜주는 기능을 가지고 있습니다.
포이치 반복은 배열 다시 말해서 링크 목록을 하나씩 반복합니다.
배열 데이터를 담을 게시물목록 변수와 게시물목록에서 하나씩 가져올 링크 주소 변수를 추가하세요.
아래와 같이 스크립트 위에 변수 2개를 추가하고 각각 아이디를 게시물목록과 글주소로 입력하세요.
글목록을 변수에 저장할 수 있도록 아래와 같이 웹 요소 탐색에서 변수 추가하기로 배열을 저장하세요.
포이치 반복에서는 게시물목록 변수의 값을 배열 데이터로 가져오고 값은 글주소 변수에 저장해야 합니다.
변수 가져오기는 아래와 같이 설정해주세요.
변수 추가하기는 아래와 같이 설정하세요.
이제 포이치 반복안에 웹 제어 액션을 추가하세요. 아래 그림과 같이 안쪽에 추가해야 합니다.
실행 전 지연에 3000을 입력했는데요. 3초동안 기다린다는 의미입니다. 각각의 페이지를 이동할 때 페이지 로딩 때문에 3초정도 설정했습니다.
실제로 동작할 때는 지연이 굳이 필요하지는 않습니다. 웹 자동화 이름을 선택하고, 액션 값에 플레이스 홀더를 사용해서 변수의 값을 가져오세요.
매크로를 실행하면 티스토리의 글 목록을 하나씩 이동합니다. 이제 글에서 댓글을 작성해야 하는데요.
웹 제어 아래에 웹 텍스트 액션을 추가하세요. 그리고, 댓글 내용을 입력 해줍니다.
티스토리 글에서 댓글 입력 요소(Element: 엘리먼트)의 XPath는 아래와 같습니다.
- //*[@id="entry230Comment"]/div/div/div/form/div/div[2]/div[1]/div/div
이제 매크로를 실행하면 각각의 글에 내용을 입력합니다.
등록을 누르지는 않았기 때문에 실제로 댓글을 달거나 하지는 않습니다.
이제 댓글을 랜덤하게 처리하는 방법을 알아볼께요. 우선, 엑셀에 댓글 내용을 몇개 추가합니다.
엑셀에 한줄씩 입력되어 있는 댓글을 0부터 4까지 랜덤 숫자를 만들어서 한줄을 가져오면 됩니다.
랜덤 숫자 액션을 추가하고, 최소 값에 0, 최대 값에 5를 입력하세요. 아래 그림은 실수로 반대로 입력했네요.
랜덤 숫자의 최대 값은 입력한 값보다 1 작은 값까지 출력됩니다. 따라서 0부터 4까지의 값만 나옵니다.
댓글인덱스 아이디로 변수를 하나 추가합니다. 그리고 랜덤하게 만들어진 숫자 값을 이 변수에 저장하세요.
외부 API에서 엑셀 읽기를 추가하세요. 그리고, 속성에서 댓글 목록이 들어있는 엑셀 파일을 선택하세요.
엑셀에서 하나의 행만 가져와야 하기 때문에 아래와 같이 변수로부터 시작 행과 끝 행에 인덱스 값을 넣어줍니다.
이제 결과 값 즉, 댓글 내용을 변수에 저장해야 합니다. 변수가 하나 더 필요하겠군요.
댓글내용 아이디로 변수를 추가하세요.
엑셀 읽기에서 가져온 행의 댓글 내용을 변수에 추가합니다.
웹 텍스트에서 댓글 내용을 변수로부터 가져옵니다. 간단하게 처리하기 위해 플레이스 홀더 방식을 사용했어요.
여기까지 랜덤하게 엑셀의 데이터를 가져오는 방법을 알아봤는데요. 적절하게 사용할 수 있는 액션을 알면 랜덤 기능을 쉽게 사용할 수 있습니다.
여러개의 데이터중에서 랜덤 숫자로 인덱스를 만들고, 인덱스에 해당하는 데이터만 추출하면 됩니다.
엑셀은 이렇게 처리할 수 있지만, 텍스트나 기타 여러개의 데이터를 처리하려면 배열 값 액션을 사용해보세요.
마지막으로 웹 클릭 액션을 추가하고, 댓글 저장 버튼의 XPath를 설정하세요.
이제 티스토리 자동 댓글 프로그램이 완성되었습니다. 이 스크립트를 복사해서 티스토리 주소만 변경하면 여러개를 동시에 사용할 수 있습니다.
그리고, 티스토리 주소도 엑셀로 정리되어 있다면 포이치 반복을 통해서 순차적으로 모든 티스토리를 실행하고 댓글 작업이 가능합니다.
내용이 복잡하고 길어 보이지만 한번 해보면 누구나 쉽게 만들 수 있는 간단한 프로그램입니다.
자세한 내용은 아래 동영상을 참고해주세요.
그리고 자주 사용되지는 않지만, 없으면 또 불편한 배열 관련 액션을 알아보도록 하겠습니다.
배열 연산 기능은 이름처럼 배열에 들어있는 항목들을 사칙연산 및 몇가지 추가 연산을 해주는 기능을 담고 있습니다.
사실, 매크로 프로그램에서 배열을 다룬다는게 쉬운일은 아닙니다. 대부분의 매크로 프로그램들이 배열을 제공하지 않을거거든요.
배열 기능을 제공하는 매크로 프로그램은 오토픽이 거의 유일하지 않을까 생각합니다.
개발자가 아닌 경우 프로그래밍이나 매크로 프로그램에서 배열이 어떤 역할을 하는지 감이 오지 않을 수 있습니다.
아래 배열에 대한 기본 내용을 먼저 읽어보시고, 이 내용을 학습하면 좀 더 쉽고 빠르게 기능을 이해할 수 있을것 같습니다.
[ 배열 추가 ]
[ 배열 수정 및 삭제 ]
오토픽 에디터를 실행하고, 왼쪽 하단의 함수 상자를 선택하세요.
표현식 카테고리를 펼쳐서 배열 연산 액션을 더블 클릭하세요.
스크립트가 자동으로 생성되고 액션이 추가됩니다.
배열 연산을 위한 데이터를 미리 만들어야 해서 변수 카테고리에 있는 변수 추가와 배열 추가 액션을 하나씩 추가 해줍니다.
그리고, 변수 추가 액션의 아이디는 array로 입력하세요.
array 변수에 배열 데이터를 저장할건데요. 배열 추가 액션을 선택하고, 한줄에 하나씩 항목을 추가해줍니다.
배열 추가에서 만든 데이터 5개를 array 변수에 추가해줍니다.
배열 연산에서 변수에 있는 배열을 가져옵니다.
현재 배열의 데이터에는 숫자와 영문자가 섞여있습니다. 매크로를 실행하면 결과 값이 0으로 나옵니다.
배열에 숫자 값들이 포함되어 있긴하지만, 문자와 혼합된 상태라서 연산에 사용할 수 없습니다.
이번에는 숫자만 추출해서 연산할 수 있도록 옵션을 변경하고 다시 실행 해볼께요.
옵션에서 숫자만 사용하기 때문에 아래와 같은 배열에서 문자들을 모두 제거한 후 연산을 수행합니다.
1 TEST > 1
2 TEST > 2
11 TEST > 11
12 TEST > 12
ABC > 0
이번에는 평균 값을 알아볼까요? 1, 2, 11, 12의 평균 값은 26 / 4 = 6.5입니다. 하지만, 소수점 길이가 0이므로 결과 값은 6이 되었습니다.
정렬된 중앙값으로 연산자를 변경하고 다시 실행 해보세요. 배열을 숫자 정렬 후 중앙값은 2입니다.
연산자를 콘케러네이트로 변경하고 다시 실행 해보세요. 이 연산자만 특이하게 연산이 아닌 연결을 해줍니다.
엑셀이나 데이터베이스 또는 화면 숫자 인식과 같이 누적되는 데이터를 배열에 계속 추가하다가 마지막에 연산을 한번 할 수 있습니다.
다만, 문자열 연결이나 숫자 사칙연산과는 다르게 배열을 통으로 한번에 연산하기 때문에 간단하게 사용할 수 있습니다.
감사합니다.
[ 각종 자동화 매크로 및 RPA 프로그램 제작 해드립니다. ]
[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]
원본 글 보기
http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech
엔지엠소프트웨어
엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.
www.ngmsoftware.com
'엔지엠 매크로' 카테고리의 다른 글
매크로 프로그램에서 창 크기 변경하는 방법 (1) | 2024.11.24 |
---|---|
매크로에서 프로그램 위치 이동 방법 좌표 연산 (0) | 2024.11.24 |
매크로 사칙 연산하는 방법 (0) | 2024.11.24 |
레이저 매크로 텍스트 (0) | 2024.11.24 |
주식, 코인, 선물 시스템매매와 텔레그램/인스타그램 마케팅 업무용 매크로 제작 (4) | 2024.11.24 |
댓글