【UWSC】でMs-Edgeを捕まえて操作する

目次

2020.01.15発表、新Ms’Edgeを【UWSC】で操作テスト

Chromium ベースの新しい Microsoft Edge をダウンロードする

インストールすると、今までのEdgeと違い「msedge.exe」がProgram Filesの下にある。

私のパソコンの環境だと、C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe

これで、UWSCで起動できるようになる。

Edge = EXEC( “C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe” )

ウィンドウのタイトルを取得するUWSCを作成する

ID=GETID("EDGE")	
N=0	
REPEAT	
	SLEEP(0.5)
	N=N+1
	CTRLWIN(ID,ACTIVATE)
	RET=STATUS(ID,ST_ACTIVE)
UNTIL RET OR N>25	
IFB RET THEN	
	PRINT "アクティブなウィンドウのタイトル"
	PRINT STATUS(ID,ST_TITLE)
ELSE	
	PRINT "TIME OVER"
ENDIF

※ id = getid(“Edge”)を id = getid(“Chrome”)にすればクロームで使える

※ 小文字、大文字は関係ないがとりあえず全て大文字にしてみた。

下記に「Chromeで動くUWSCマクロ」を「①Edgeに変えて動作」させてみる

2019.04.06福島4R サラ系障害4歳以上未勝利をEdgeで表示する

//Edgeを閉じる!!
CTRLWIN(GETID("EDGE"),CLOSE)
//環境に合わせて変更すること

EDGE = EXEC( "C:\Program Files\Microsoft\Edge\Application\MSEDGE.EXE" )

SLEEP(1)
//JRAのsitemapを立ち上げる
URL="http://www.jra.go.jp/sitemap/"	
SENDSTR(EDGE, URL)	
SCKEY(EDGE, VK_RETURN)	

//EXEC("CMD /C START= http://www.jra.go.jp/sitemap/")	

SLEEP(1)	

ID=GETID("サイトマップ JRA - 個人 - MICROSOFT EDGE")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「サイトマップ」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//サイトマップから文字列検索し
//「レース結果」をクリック	
SLEEP(1)
//クリップボードに文字を送る	
SENDSTR(0, "レース結果") 	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("レース結果 開催選択 JRA - 個人 - MICROSOFT EDGE")
	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「レース結果 開催選択」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//レース結果 開催選択から文字列検索し
//「過去レース結果検索」をクリック	
SLEEP(1)
//クリップボードに文字を送る	
SENDSTR(0, "過去レース結果検索")	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("過去レース結果検索 JRA - 個人 - MICROSOFT EDGE")
	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「過去レース結果検索」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
//過去レース結果検索から文字列検索し
//「開催年月」を選択	
SLEEP(1)
//クリップボードに文字を送る	
SENDSTR(0, "開催年月")	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_TAB,CLICK)	
SLEEP(0.5)	
KBD(VK_2,CLICK)	
KBD(VK_0,CLICK)	
KBD(VK_1,CLICK)	
KBD(VK_9,CLICK)	
KBD(VK_TAB,CLICK)	
SLEEP(0.5)	
//KBD(VK_0,CLICK)	
KBD(VK_4,CLICK)	
KBD(VK_TAB,CLICK)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("過去レース結果検索 JRA - 個人 - MICROSOFT EDGE")
	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「過去レース結果検索」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//過去レース結果検索「1回福島1日」をクリック	
SLEEP(1)	
//クリップボードに文字を送る
SENDSTR(0, "1回福島1日")	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("レース結果 レース選択 JRA - 個人 - MICROSOFT EDGE")
	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「レース結果 レース選択」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//過去レース結果検索
//「障害4歳以上未勝利」をクリック	
SLEEP(1)
//クリップボードに文字を送る
SENDSTR(0, "障害4歳以上未勝利")	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
KBD(VK_SHIFT,DOWN)	
KBD(VK_TAB,CLICK)	
SLEEP(0.5)	
KBD(VK_SHIFT,UP)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("レース結果 JRA - 個人 - MICROSOFT EDGE")
	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「レース結果 JRA」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF

上記マクロをChrome用に書く⇒変更点は2ヵ所のみ

  • MSEDGE.EXE ⇒ chrome.exe
  • GETID(“レース結果 JRA – 個人 – MICROSOFT EDGE”) ⇒ GETID(“レース結果 JRA”,”chrome”)
//コンピュータ名を取得する	
DIM WSHSHELL = CREATEOLEOBJ("WSCRIPT.SHELL")	
COMNAME= TRIM(WSHSHELL.EXPANDENVIRONMENTSTRINGS("%COMPUTERNAME%"))	
//PRINT "COMPUTERNAME:" + COMNAME	
	
//JRAのホームページを立ち上げる	
	
CTRLWIN(GETID("chrome"),CLOSE)

//	CHROME = EXEC( "C:\PROGRAM FILES (X86)\Google\Chrome\Application\chrome.exe" )	
	CHROME = EXEC( "C:\Program Files\Google\Chrome\Application\chrome.exe" )

SLEEP(1)	
URL="http://www.jra.go.jp/sitemap/"	
SENDSTR(CHROME, URL)	
SCKEY(CHROME, VK_RETURN)	
SLEEP(1)	
	
//EXEC("CMD /C START=http://www.jra.go.jp/sitemap/")	
//SLEEP(1)	
ID=GETID("サイトマップ JRA","chrome")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「サイトマップ」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//サイトマップから 文字列検索し「レース結果」をクリック	
SLEEP(1)	
SENDSTR(0, "レース結果") //クリップボードに文字を送る	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("レース結果 開催選択 JRA","chrome")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「レース結果 開催選択」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//レース結果 開催選択から 文字列検索し「過去レース結果検索」をクリック	
SLEEP(1)	
SENDSTR(0, "過去レース結果検索") //クリップボードに文字を送る	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("過去レース結果検索 JRA","chrome")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「過去レース結果検索」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
//過去レース結果検索から 文字列検索し「開催年月」を選択	
SLEEP(1)	
SENDSTR(0, "開催年月") //クリップボードに文字を送る	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_TAB,CLICK)	
SLEEP(0.5)	
KBD(VK_2,CLICK)	
KBD(VK_0,CLICK)	
KBD(VK_1,CLICK)	
KBD(VK_9,CLICK)	
KBD(VK_TAB,CLICK)	
SLEEP(0.5)	
//KBD(VK_0,CLICK)	
KBD(VK_4,CLICK)	
KBD(VK_TAB,CLICK)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("過去レース結果検索 JRA","chrome")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「過去レース結果検索」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//過去レース結果検索「1回福島1日」をクリック	
SLEEP(1)	
SENDSTR(0, "1回福島1日") //クリップボードに文字を送る	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("レース結果 レース選択 JRA","chrome")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「レース結果 レース選択」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF	
	
//過去レース結果検索「障害4歳以上未勝利」をクリック	
SLEEP(1)	
SENDSTR(0, "障害4歳以上未勝利") //クリップボードに文字を送る	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_F,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_F,UP)	
SLEEP(0.5)	
KBD(VK_CTRL,DOWN)	
KBD(VK_V,DOWN)	
SLEEP(0.5)	
KBD(VK_CTRL,UP)	
KBD(VK_V,UP)	
SLEEP(0.5)	
KBD(VK_ESC,CLICK)	
SLEEP(0.5)	
KBD(VK_RETURN,CLICK)	
KBD(VK_SHIFT,DOWN)	
KBD(VK_TAB,CLICK)	
SLEEP(0.5)	
KBD(VK_SHIFT,UP)	
KBD(VK_RETURN,CLICK)	
SLEEP(1)	
ID=GETID("レース結果 JRA","chrome")	
SLEEP(0.5)	
CTRLWIN(ID,ACTIVATE)	
SLEEP(0.5)	
RET=STATUS(ID, ST_ACTIVE)	
IFB !RET THEN	
	PRINT "「レース結果 JRA」ではありません"
	PRINT ID
	SLEEP(5)
	EXIT
ENDIF

//EDGE = EXEC( "C:\Program Files\Microsoft\Edge\Application\MSEDGE.EXE" )	'↓
//CHROME = EXEC( "C:\Program Files (X86)\Google\Chrome\Application\chrome.exe" )
//ID=GETID("レース結果 JRA - 個人 - MICROSOFT EDGE")				'↓
//ID=GETID("レース結果 JRA","chrome")	

Chrome+UWSC , Edge+UWSC それぞれの推しポイント

Chrome+UWSC

  • 指定の仕方はChromeの方が簡単。 「”レース結果 ”,”chrome”」で動く
  • 拡張機能が充実。(これは今だけのことかもしれない…)
  • 個人的なマクロ資産がある。(これは私だけかも知れない…)

Edge+UWSC

  • Officeとの連携。(Office365 solo)特にExcelとEdgeの連携は注意しておきたい
  • WIN10がEdgeベースで動いているという点
adono

UWSCはWindows11で動作する(私のモジュールはね)

Windows11上で【UWSC】は動作するので、当面はPythonを猛勉強する必要はなさそうだけどねぇ~😏2022.5.9現在!

編集後記

UWSCが使えるまでは、わたしゃWindowsユーザーでよかろう~と思う今日この頃である。

それでは、またね~😎

この記事を書いた人

マクロで半自動化!GO!GO!!PROGRAMMING
管理人:あどのまつり
馬齢:牡50代(後)✖1

2023年はコロナ明けでタイ旅行にいきThai!!

目次