무료 매크로 프로그램 다운로드
http://ngmsoftware.com/bbs/board.php?bo_table=product1&wr_id=32
엔지엠소프트웨어
엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.
www.ngmsoftware.com
#매크로 #매크로프로그램 #메크로 #g매크로 #마우스매크로 #키보드매크로 #엑셀매크로 #키매크로 #수강신청매크로 #로지텍마우스매크로 #매크로키보드 #파이썬매크로 #매크로뜻 #매크로마우스 #로지텍매크로 #ld플레이어매크로 #오토마우스매크로 #키보드마우스매크로 #오토핫키매크로 #이미지매크로 #이미지인식매크로 #하드웨어매크로 #화면인식매크로 #선착순매크로 #이미지서치매크로 #한글매크로 #심플핫키 #simplehotkey #지존매크로
- 엔지엠 무료: 무료 (전체 기능의 50프로)
- 엔지엠 커뮤니티 월 이용료: 4,500원, 1년 이용료: 55,000원 (전체 기능의 80프로)
- 엔지엠 얼티밋 월 이용료: 6,500원, 1년 이용료: 77,000원 (전체 기능의 90프로)
- 엔지엠 엔터프라이즈 월 이용료: 9,200원, 1년 이용료: 110,000원 (전체 기능 사용)
안녕하세요. 엔지엠소프트웨어입니다. 엔지엠 RPA 매크로에는 웹 API 액션들이 존재합니다. 여기에 있는 액션들을 이용해도 충분하지만~ 셀레니움(Selenium) 기반 웹 API가 아닌 Puppeteer를 사용해서 크롤링을 해보도록 하겠습니다. 우선, 커스텀 액션을 만드는거라서 엔지엠소프트웨어에 커스텀 모듈을 받아야 합니다. 그리고, 아래와 같이 내문서 > NGM6 폴더에 복사하세요. 커스텀 개발에 필요한 인터페이스 모듈은 총 3개입니다.
이제 Visual Studio 2022 Community를 실행하고, 새로운 프로젝트를 하나 만듭니다. 커스텀 모듈 개발 가이드는 아래 링크에 자세하게 소개되어 있습니다. 아래 내용을 천천히 읽어보시면 커스텀 모듈 액션을 개발하기 위한 환경 셋팅과 기초적인 학습 내용이 있으니 꼭 처음부터 읽어보세요.
[ 커스텀 모듈 개발 가이드 ]
새 프로젝트 추가에서 클래스 라이브러리(.NET Framework)를 선택하고, 우측 하단의 다음을 클릭하세요.
프로젝트 이름은 CustomWebCrawlingModlue입니다. 이름은 자유롭게 하셔도 되지만 Custom으로 시작해야 합니다.
새로운 프로젝트가 추가되었습니다.
기본 클래스 이름을 CustomPuppeteerModel로 변경해줍니다. 프로젝트 nuget에서 puppeteer를 검색하고 PuppeteerExtraSharp을 설치하세요.
종속성을 가지는 모듈들도 같이 설치됩니다.
프로젝트의 참조에서 우클릭하고 추가를 선택하세요. 참조 관리자가 표시되고 찾아보기를 클릭하세요. 참조할 파일 선택창에서 커스텀 개발 관련 모듈 3개를 추가합니다.
아래와 같이 NGM.Models.Interface.BaseCustomToolModel을 상속 받으세요. 그리고, Abstract Property(추상 속성)와 Abstract Method(추상 메소드)를 추가 해줍니다.
namespace CustomWebCrawlingModule
{
public class CustomPuppeteerModel : NGM.Models.Interface.BaseCustomToolModel
{
public override string DisplayCategory => throw new NotImplementedException();
public override string DisplayName => throw new NotImplementedException();
public override void Execute()
{
throw new NotImplementedException();
}
}
}
아래와 같이 DisplayCategory 속성의 값을 "웹크롤링"으로 입력하세요. 이 속성은 엔지엠 에디터의 도구 상자에서 표시되는 카테고리 이름입니다. 그리고, DisplayName은 "크롤러"로 입력하세요. 웹크롤링 카테고리 안에 표시되는 액션의 이름입니다. 2개의 속성은 사용자가 관리하기 편한 임의의 이름으로 설정해도 됩니다. 추가로, 크롤링한 사이트의 HTML 소스를 보여주기 위해 Result 속성을 하나 추가했습니다. 그리고, 사용자로부터 크롤링할 사이트의 주소를 입력 받을 URL 속성도 추가하세요.
namespace CustomWebCrawlingModule
{
public class CustomPuppeteerModel : NGM.Models.Interface.BaseCustomToolModel
{
public override string DisplayCategory => "웹크롤링";
public override string DisplayName => "크롤러";
[Category("Data")]
[DisplayName("사이트 소스")]
[Description("크롤링한 사이트의 HTML 소스입니다.")]
[Browsable(true)]
[DefaultValue(null)]
[Editor(typeof(MultilineStringEditor), typeof(UITypeEditor))]
public string Result { get; set; }
[Category("Action")]
[DisplayName("사이트 주소")]
[Description("크롤링할 사이트의 주소를 입력하세요.")]
[Browsable(true)]
[DefaultValue(null)]
[Editor(typeof(MultilineStringEditor), typeof(UITypeEditor))]
public string URL { get; set; }
public override void Execute()
{
}
}
}
마지막으로 Execute 메소드를 아래와 같이 코딩합니다.
using var browserFetcher = new BrowserFetcher();
await browserFetcher.DownloadAsync();
await using var browser = await Puppeteer.LaunchAsync(
new LaunchOptions { Headless = true });
await using var page = await browser.NewPageAsync();
await page.GoToAsync("http://www.google.com");
await page.ScreenshotAsync(outputFile);
Result = await page.GetContentAsync();
커스텀 모듈을 빌드한 후 엔지엠 에디터에 커스텀 모듈을 설치합니다.
그리고, 새 스크립트에 크롤러 액션을 추가하세요. 크롤링할 사이트 주소를 입력하고 실행하면 HTML 소스를 뽑아올 수 있습니다.
Puppeteer는 다양한 플러그인을 사용할 수 있는데요. 기본적으로 스텔스 플러그인을 사용하여 자동화 소프트웨어 감지를 우회하도록 했습니다. 이외에도 익명 사용자 로그인과 리캡챠를 우회할 수 있는 플러그인들도 존재합니다. 또한, 모든 메소드가 비동기로 동작하기 때문에 웹 특성상 페이지 로딩이 완료되자마자 다음 메소드가 호출됩니다. 따라서 딜레이없이 업무 자동화 매크로를 제작할 수 있습니다. Selenium과 Puppeteer은 서로 장단점이 명확합니다. 아무래도 셀레니움이 더 범용적이고 알려진 방식이고, 퍼펫티어는 그리 많이 사용되지 않고 있습니다. 셀레니움이 비해 몇가지 장점을 가지고 있긴하지만, 범용성면에서 아직까지는 많이 부족하거든요. 아무튼~ 선착순이나 예약 또는 순위를 올리기 위한 500타 1,000타를 올리기 위한 작업에는 도움이 될 수 있을거 같습니다.
[ 각종 자동화 매크로 및 RPA 프로그램 제작 해드립니다. ]
[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]
원본 글 보기
http://ngmsoftware.com/bbs/board.php?bo_table=tip_and_tech
엔지엠소프트웨어
엔지엠 매크로는 복잡한 반복작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.
www.ngmsoftware.com
#비활성매크로 #g102매크로 #철권매크로 #레이저마우스매크로 #ghub매크로 #녹화매크로 #키보드반복매크로 #로지텍마우스광클매크로 #플라스크매크로 #윈도우매크로 #비활성g매크로 #오토매크로 #자동사냥 #주식매크로 #오토핫키키보드 #오토핫키마우스 #오토핫키이미지 #지존오토 #기계식매크로 #하드웨어매크로 #무한반복매크로 #대량이메일발송매크로 #엑셀VBA매크로 #주식모니터링매크로 #이미지맥스 #심플핫키 #오토클리커 #UiPath #Brity #스푸퍼 #DKOM #모바일게임매크로 #다클라매크로 #다계정매크로 #인스타그램매크로
댓글