自動化ツールUWSC使いよ集まれ24

■ このスレッドは過去ログ倉庫に格納されています
2021/07/07(水) 11:17:44.59ID:txZoNC6Z00707
Windowsの作業を自動化するツール
フリーソフト版とシェアウェア版の2種類がある
・UWSC Free版 Ver5.3.0.2
http://www.uwsc.info/uwsc5302.zip
・UWSC Pro Ver5.3.0.2 (スレ建て時点で、現在シェアレジはできません。)
http://www.uwsc.info/uwscpro5302.exe 

●UWSC 掲示板(※作成依頼掲示版ではありません)
 質問の際には自力で作ったスクリプトを晒すか、具体的な解らない場所を提示すること
 上級者が常駐、たまに作者も現れるため過去ログには有益情報の宝庫
http://www3.rocketbbs.com/13/bbs.cgi?id=umiumi
http://www3.rocketbbs.com/601/siromasa.html

●UWSC - Wikipedia
http://ja.wikipedia.org/wiki/UWSC

●使い方・基礎解説学習サイト
http://uwsc.g.hatena.ne.jp/cx20/20100131/1264938584
http://www.confrage.com/uwsc/
http://necro.jp/dev/uwsc/
http://canal22.org/
http://big.tm.land.to/handbook/uwsc.htm
http://www.game-rev.com/review/gameut/uwsc.html

●スクリプトテンプレサイト
http://scripts.web.fc2.com/
http://nem.symphonic-net.com/uwsct/0610uwsct.html
http://iriyak.adam.ne.jp/uwsc.html
※前スレ
自動化ツールUWSC使いよ集まれ23
https://egg.5ch.net/test/read.cgi/software/1600515815/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2022/01/15(土) 00:45:38.63ID:mKTBRHeP0
chkimgxなんだけど、これchkimgみたいに色無視ってのできないの?
着目する色を-1にすればいいのかなと試したけどスコア全く変わらないし
2022/01/15(土) 01:30:40.12ID:ldKOl0pI0
>>554
確かに最長一致で最初から最後までがまとめて削除されますね、、
改造して以下で落ち着きました

obj = CreateOLEObj("VBScript.Regexp")
obj.Global = TRUE // ← これも必要だった
obj.pattern = "この人の名前は.*?さんです。"
m = obj.Execute(文章)

for i = 0 to m.count -1
  文章 = REPLACE(文章,m.item[i].value,"")
next
2022/01/15(土) 12:34:52.04ID:0obQy4Be0
>>566
具体的にどこがバカなのか理論的に説明してくれませんかねぇ
2022/01/15(土) 12:40:30.25ID:F9/bGUQ00
それを言うなら論理的だろ
要求にマッチしてないところじゃね
2022/01/15(土) 13:04:21.85ID:CFZxyFrFM
>>568
うーん中途半端
.Execute は抽出用のメソッドだぞ
置換なら 文章 = obj.Replace(文章, "") だけでいいのに
2022/01/15(土) 13:06:44.64ID:0obQy4Be0
>>570
べ、勉強になりました(´・ω・)
2022/01/15(土) 18:06:05.88ID:mcXCiXpJ0
>>543
//UWSCで普通に書けるよ


文章 = "あいうえお。この人の名前はAAさんです。この人の名前はBBさんです。この人の名前はCCさんです。この人の名前はDDさんです。この人の名前はEEさんです。かきくけこ。"

WHILE 名前サーチ(文章) <> ""

IFB 名前サーチ(文章) <> ""
文章 = REPLACE(文章 , "この人の名前は" + 名前サーチ(文章) + "さんです。" , "")
ENDIF

WEND

msgbox(文章)

FUNCTION 名前サーチ(a)
RESULT = BETWEENSTR(a,"この人の名前は","さんです。")
IFB RESULT = TRUE;RESULT = BETWEENSTR(a,"この人の名前は","さんです。");ENDIF
FEND
2022/01/15(土) 18:55:21.52ID:CFZxyFrFM
>>573
while TRUE
 name = BetweenStr(文章, "この人の名前は", "さんです。")
 if name = EMPTY then break
 文章 = Replace(文章, "この人の名前は" + name + "さんです。", "")
wend

だけでいいよ
2022/01/15(土) 19:48:34.95ID:mcXCiXpJ0
>>574
GJ
2022/01/16(日) 01:36:27.49ID:5oxPOw8N0
色々な方法があって勉強になりました。因みに、

文章 = "ああああ"
for i = 1 to 1000
  文章 = 文章 + "ああああこの人の名前は" + i + "さんです。いいい" + 10000 +i
next

で予め長文章を作っておいて、各処理時間を計測すると
>>568
0.11秒
>>571
0.003秒
>>573
0.36秒
>>574
0.175秒
となった
2022/01/17(月) 23:59:05.94ID:OdXwIB3q0
てか何度も言うけどなんでuwscでやんねん・・・
縛りプレイか何かかっちゅうねん
2022/01/18(火) 10:08:50.98ID:+GMVaSPv0
>>577
目の前にあるもので、ググッたら?
2022/01/18(火) 10:11:21.17ID:qrZvd0yu0
他人の思考知りたい 検索
2022/01/18(火) 12:07:35.37ID:vR0ZGM89M
2022/01/18(火) 17:48:26.63ID:/YXF6EKk0
>>577
UWSCスレで何を言ってる?

UWSC縛りで何とかするスレなのは承知の上だろ
2022/01/18(火) 18:58:25.34ID:4cWWI9m20
別にそんなことはないだろw
目的がはっきりしてるならUWSC以外の手段も考えるのは妥当
2022/01/18(火) 19:54:46.81ID:RtMLqajN0
正規表現を使わずにBetweenStr使って >>574 とかは勉強になった
制約がある中でスマートに書くのってシェル芸みたいでカッコイイ
2022/01/19(水) 14:26:57.05ID:nlQ6Cq0/0
別に >>543 は単独で実行したかったわけではなくて、
その前後にUWSCでやった方が「楽な」処理に挟まっていたので、
UWSC関数でやりたかったんだ。 後出しスマン
2022/01/19(水) 18:58:49.37ID:UEwVtxIcM
一連の処理中、それが数回しか実行されず時間も大して変わらんならUWSCでいいが、数千回数万回呼び出されて実行時間の大半を専有するならUWSC以外を考慮
まあ、ケース・バイ・ケースだな
586名無しさん@お腹いっぱい。 (オッペケ Srd1-1d50)
垢版 |
2022/01/19(水) 19:09:39.74ID:sY9LPB6Ar
まぁ、外野が心配するこっちゃねーわ
2022/01/19(水) 22:24:54.52ID:W8jXRDpC0
ちょっと面倒なのを考えてみるのも勉強になるから良いけどな
2022/01/20(木) 00:08:42.11ID:ta3/72ov0
UWSCはプログラムの書き方よりも
事実上開発終了になっているから
このまま使い続けるのが不安になるのが問題だよな
2022/01/20(木) 00:12:05.88ID:yfnqCiLE0
UWSCコンパイラとかを夢想するが、作っても需要なさそう
590名無しさん@お腹いっぱい。 (ワンミングク MM52-76Y4)
垢版 |
2022/01/20(木) 00:33:11.99ID:VHJuD5vLM
exe化は有料オプションであったでしょ。

ほんとの意味のコンパイラとか作ってもだれも喜ばないし。

>>576
UWSCは関数呼び出しが遅いのと
行数が多いと遅くなるん
2022/01/20(木) 00:58:31.89ID:ta3/72ov0
EXE化してもUWSCが入っていないPCで
単独で実行可能になるだけで
実行速度が早くなる訳でも無いしな
2022/01/25(火) 14:06:51.05ID:v0xv11Zz0
ChkImgXってスクリプトと同一フォルダに
ChkImgX.uws、ChkImgX.dll、NekoAddon.dllを置かないといけないみたいのだが
この仕様どうにかならない?
この3セットが、色んなフォルダに増殖しているのだが、、汗
2022/01/25(火) 14:15:43.39ID:xz7gJ1XQM
>>592
試してないけど、chkimgx.uwsを自分で書き換えればいけないか?
2022/01/25(火) 15:12:33.41ID:/nNqW05R0
>>592
同一フォルダに置かないといけない仕様なんてないぞ
2022/01/25(火) 15:37:08.69ID:v0xv11Zz0
>>593
chkimgx.uwsに記述されているChkImgX.dllを「絶対パス +ChkImgX.dll」、NekoAddon.dllを「絶対パス +NekoAddon.dll」に書き換えて、
call 絶対パス +chkimgx.uwsで呼んでもエラーになりました。
因みに3セットが置いてあるフォルダのパスを通してもダメ
2022/01/25(火) 15:40:43.40ID:UJEx5jbsa
>>595
それどちらもいける
どちらのやり方も自分で確かめた

具体的にどう書いたのかた
PATHは
どこにどのタイミングデPATH設定した?
利用時点で有効になっていないだけでは?
2022/01/25(火) 15:42:28.07ID:UJEx5jbsa
dllの利用時にパスの指定がなければ基本的にカレントディレクトリを探す
ので普通に使うと呼び出し元のuwsと同じところにあるdllしか使えない

解決法は以下の通り


まず
C:\chkimgx\ フォルダに
3つのファイルをまとめる
※あくまでもフォルダ名は例

そのうえで2つの方法がある

■1つ目の方法
call "C:\chkimgx\ChkImgX.uws"
とする
↑これは絶対パスで書いてあるが
呼び出すuwsからの相対パスで指定可能

DLLはカレントディレトリのほか環境変数PATHの設定にあるディレクトリからも探されるので

Windowsのシステムのプロパティの環境変数設定で
PATH(Path)に「;C:\chkimgx」を追加する
一般的に考えられるような使用範囲ならユーザの環境変数に追加すればよい
システムのプロパティで設定しないでもUWSが起動されるプロンプトで
有効なパス設定であればいいのでバッチなどで一時的なPATHを設定後
UWSを起動する方法でも問題はない
2022/01/25(火) 15:42:38.70ID:UJEx5jbsa
■2つめの方法
これは >>593 の言う通りで

ChkImgX.uws 内の
def_dll 関数名(パラメータ): 返却値型: ChkImgX.dll
def_dll 関数名(パラメータ): 返却値型: NekoAddon.dll
をすべて
def_dll 関数名(パラメータ): 返却値型: C:\chkimgx\ChkImgX.dll
def_dll 関数名(パラメータ): 返却値型: C:\chkimgx\NekoAddon.dll
のように書きっ換え
MyChkImgX.uws として保存し

call "C:\chkimgx\MyChkImgX.uws"
とするようにする
↑これは絶対パスで書いてあるが
呼び出すuwsからの相対パスで指定可能
2022/01/25(火) 16:07:26.34ID:UJEx5jbsa
PATHが有効であることを確実に確かめる方法

1.C:\chkimgx\ フォルダに
  3つのファイルがまとめてあるとする

2.コマンドプロンプトを開く

3.環境変数PATHの設定
  PATH C:\chkimgx
  とする
  (環境変数PATHの内容はC:\chkimgxだけになる
  有効範囲はこのコマンドプロンプト内のみ)

4.テスト実行
  tesut.uws で
  call "C:\chkimgx\ChkImgX.uws"
  とし

  C;\uwsc\uwsc.exe c:\myscript\test.uws
  のようにしchkimgxを利用しているテストプログラムを動かす
2022/01/25(火) 20:14:38.62ID:iQ01n8dC0
ゴメン、今やったらいけたわ、、
だが、 何をやったら上手くいって何をやったら失敗したのかは、
今、飲んでいるので調査不可w

またよろしくな!
601名無しさん@お腹いっぱい。 (ブーイモ MMcb-fCUX)
垢版 |
2022/01/27(木) 00:43:27.04ID:D6jYiXucM
>>581
まぁそういう話ならわからんでもないけど

>>578
↑こいつは完全にアホ
本当に意味がわかっててレスしてんのかこいつは
2022/01/27(木) 01:14:38.33ID:h79wapPv0
vmware上で3Dゲームの自動化してるけど、やっぱホストマシンの負荷が大きいので、
サブマシンのリモートデスクトップで同じことをやろうと思い環境を構築したものの、
リモートデスクトップ接続中はちゃんとuws走るんだけど、いざリモートデスクトップ接続を切って
完全にモニター無しのサブマシンでUWSを走らせるとchkimgxがエラーを吐いてる。

やっぱモニター接続しないといけないのかしら。ってそんなことしたらあんま意味ないんだけど。
サブマシン上でまたvmwareやるとさすがにスペックがしょぼくて、まともに動かんw
2022/01/27(木) 01:44:54.25ID:zz44HZdL0
リモートデスクトップは画面表示している状態じゃないと
マウスの位置が取得出来なくなるな 最小化も駄目
仮想PC上だったら表示しなくても正常に動いている
2022/01/27(木) 01:58:46.31ID:XwXCsu1n0
おらもモニタ無しリモートデスクトップでchkimgx動かしてるよ
HDMIエミュレータをくっつけてる
2022/01/27(木) 03:28:40.06ID:ajJ8deH7M
自分もノートPCにHDMIのダミープラグ使ってるけど邪魔なんだよね
最近は一部のリモートデスクトップでソフトウェア使って回避出来るみたい
もっと広く普及して欲しいわ
2022/01/27(木) 04:57:17.19ID:l1C2K83a0
どのリモートデスクトップ使っているか知らんが、
俺はUltraVNCで5年以上問題なし。
CHKIMG使うソフトの時はスクリーンセーバーをオフにしている
607名無しさん@お腹いっぱい。 (ワッチョイ 7f7e-IuBN)
垢版 |
2022/01/27(木) 09:10:48.71ID:KGgp0ZYG0
スクリーンセーバーとか死語
2022/01/27(木) 09:16:43.37ID:RljKrz0j0
win11は知らんけどwin10で使われてるから死語ではないな
2022/01/27(木) 12:38:46.14ID:h79wapPv0
fukidasiを別スレで回してpublicな変数のコメントがリアルタイムで反映してくれるの
知って使いやすくなった。
procedure
while true;fukidasi(pub_n+"回目のループ");sleep(1);wend
fend
2022/01/27(木) 14:10:30.79ID:KuHONevW0
これからプログラムの勉強しようと思うのだけど、
UWCでマクロ自動記録して、それを自分でチョコッと修正するくらいのレベルしかありません。

でも、これから勉強するのにUWSCは止めておけと言われたので、
他のお勧めの言語は何ですか?

UWSのようにGETIDで簡単にウィンドウを掴んで、
そのウィンドウの大きさを簡単に変えたり、文字列を送れるやつでお願いします。
2022/01/27(木) 15:10:43.76ID:60bda3Fg0
Python一択じゃね
2022/01/27(木) 22:18:33.35ID:IMBFbHgH0
>>610
昔のBASICみたいに特別な環境構築無しでテキトウに1行書いたプログラムでも動くから、プログラミングの練習に使えなくはない
ある程度使えるようになるくらいになれば他の言語を勉強するのが楽になるかもしれない
2022/01/28(金) 00:41:53.41ID:oqBmkFSO0
Pythonスレで聞いてきたけど、まずその自動記録の環境を作らなければならず、
これが無いと0から自分でコードを作ることになるので、自分には敷居が高すぎました。

UWSCの自動コード作成ツールって楽ですよね、
他にこんな事出来る言語って他にあります?
2022/01/28(金) 04:17:07.71ID:YPnlDTOX0
>>613
エクセル
敷居が高いの誤用
615名無しさん@お腹いっぱい。 (ワッチョイ a67e-Xc5L)
垢版 |
2022/01/28(金) 09:41:27.55ID:7FIMUFYu0
「敷居が高い」を「ハードルが高い」のような意味で使うのは本来、誤用なんだぜ

敷居が高い(しきいがたかい)… 相手に不義理をしたり、また、面目がないことがあったりして
その人の家に行き難くなる。また、その人に会い難い状態。

今のガキは敷居自体知らんからしょうがなかろう

「行き難くなる」とは、言葉を付け加えると
「一度は訪問した経験があるが、相手との仲が悪くなったりご無沙汰していて訪問しづらい」という事である。
ここで重要なのは「一度は経験がある」という事であり、これが「敷居が高い」の最重要要素となる説明なのである。
2022/01/28(金) 09:49:36.93ID:nNmTX3Wi0
>>615
今は高級な店に入りにくい場合とかに敷居が高いを使えるはずだから経験の有無は無関係だと思う
2022/01/28(金) 09:53:18.40ID:SI2LpGKr0
まあいまさらこれについて「本来の意味がー」とか言うのは
社会人的に言えばそっちのほうが不正解だわな
2022/01/28(金) 10:03:43.77ID:kZEaxTxu0
>>615
今どき敷居が高いが本来の意味で使われてるパターンを見ないわ
99%ハードルが高いの意味で使われてんじゃねってぐらい
2022/01/28(金) 10:05:01.42ID:nNmTX3Wi0
簡単じゃない言い回しを雰囲気で誤用してる方が社会人的には不正解だと思う
言うこと書くこと信用できないって事だから
2022/01/28(金) 10:06:47.24ID:nNmTX3Wi0
>>618
たしかに
2022/01/28(金) 10:33:14.35ID:c/DNjX520
入門するのが難しい は 敷居が高い のほうがすき
入門から初級になるのが難しい は ハードルが高い のほうがすき
2022/01/28(金) 10:49:19.46ID:SI2LpGKr0
分かる
でも逆にハードルって環境としての壁って意味だけのはずが
いまは敷居みたいな心理的なニュアンスも大きい気がするね
2022/01/28(金) 10:56:53.45ID:c/DNjX520
心理的ハードル は良く使われる
2022/01/28(金) 17:35:57.07ID:9xczyJmq0
SETHOTKEYって1時間くらいプログラム走らせていると動作しなくならない?
Alt + F2ではすぐ終了するので、フリーズしているわけでもないし、
10分20分くらいではちゃんとホットキーは動作する。
625名無しさん@お腹いっぱい。 (ワッチョイ a67e-Xc5L)
垢版 |
2022/01/29(土) 09:53:33.21ID:Vw3C665d0
敷居程度の高さも跨げないってレベル低すぎだろ
2022/01/29(土) 10:08:27.62ID:E7ib/Sqn0
何の意味も無い議論を延々と続ける文系は社会の癌
この世から消えて欲しい
2022/01/29(土) 14:40:16.07ID:mrsTs7F90NIKU
工事中に床ができてないところに敷居を作られるとすんげー邪魔
2022/01/29(土) 15:03:36.78ID:o8VJ5uqO0NIKU
気にするのって文系より理系じゃないの
>>624
もう少し具体的に
2022/02/02(水) 17:48:26.74ID:Bq13Lf3r00202
>>611
スクレイピングしようと思ってPythonを少し触ってみたが、UWSCでコード書いたほうが簡単だったわw
2022/02/05(土) 04:37:41.32ID:4UmQLwLu0
最近UWSCで初めてプログラミングに触れたんだけど
これ普通に実用的だしゲーム作るとかサイト作るとかより身近な用途で使えるのに、今一知名度ないのはなんで?
まだよく知らないけどCとかpythonはUWSCでできる事はできる上にもっと高度な事もできるみたいな感じなの?
631名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 09:47:14.71ID:y43CCjkS0
どなたかUWSCの多重起動のやり方を教えてくれませんか?複数のuwsファイルを同時に動かしたいんですが。
2022/02/05(土) 10:01:51.59ID:gWwHXbN60
>>630
UWSCは自分の作業を自動化するって意味ではかなり優秀なツールだと思うよ

ただユーザーインターフェースがつくれないから(無理矢理は作れるのかもしれんが)、他人が使う前提のアプリには向かない

UWSCだと作業対象のフォルダパスとかINIファイル書き換えて読み込ませるになっちゃうからね
2022/02/05(土) 10:05:12.35ID:AkVx60260
>>630
VBAでさえ知らない人は知らないからね
C言語は機械寄りなので速いしできることが多いが難解・冗長
VBSやPythonやUWSCは同じようなもんでそれらがC言語で書かれてたりする
スピードや出来ることは限られるが分かりやすく使いやすい

>>631
普通にuwsファイルをuwsc.exeに関連付けてそのまま開けばいい
634名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 10:58:38.26ID:y43CCjkS0
>>633
できました!ありがとうございます!

でもやはり同じウィンドウで多重起動するとうまく動かないみたいです。

パソコンを複数用意して1つずつ起動するしかないでしょうか?
2022/02/05(土) 11:00:03.34ID:Yr44NToAM
>>632
グラフィック多用した綺麗なUIは無理でも、slctboxとかで最低限他人につかわせれれべる使えるUIは作れるよ
2022/02/05(土) 11:17:45.53ID:AkVx60260
>>634
何をしようとしてるか分からんけど
スクリプトを複数起動向けにとか1スクリプトでまかなえるようにとか修正すれば
大抵はいける気がするけどね
2022/02/05(土) 11:22:30.76ID:YMKjPd5Q0
>>630
ビジネス用途では代替えが出ててもう時代遅れ
自動化するだけならpythonとかもいらないし
自分も使ってるの過去の遺産だけでuwsc使うのもうほとんどない
638名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 11:29:13.84ID:y43CCjkS0
>>636
ありがとうございます。
やってみます!
2022/02/05(土) 11:37:47.12ID:gWwHXbN60
>>635
最低限すぎるんだよね
作業内容が増えるにつれてslctbox分岐だらけになって使いづらくなる

HTMLのForm使える機能もあったはずだが、使い勝手悪くて結局他人が使うものはC#でツール作ることがおおくなった

でも自分の作業の自動化やその場でサッと使えるもの作るという意味ではかなり優秀なソフトだからいまでも愛用してるよ
2022/02/05(土) 11:42:25.12ID:Yr44NToAM
>>634
同じウィンドウで多重起動の意味が分からん
641名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 11:54:48.87ID:y43CCjkS0
>>640
1つのパソコンで複数のuwsファイルを実行するということですね。

複数のuwsファイルを1つのパソコンで実行するとバグってしまうので今仮想化したりして色々試しているんですが、なかなか難しいです。
2022/02/05(土) 11:58:00.59ID:Yr44NToAM
>>639
pythonなんかもGUIは別途ライブラリインポートだし、ユーザーが世界中にいないからライブラリが充実しないってことでしょうね
2022/02/05(土) 12:03:29.70ID:Yr44NToAM
>>641
3つ4つ起動して普通に動いてるよ

fornextを10万回回すだけのuws作って多重起動してみ。普通に動くから

多重起動で問題あるとすればuwsc自体の問題じゃなくて、お前が動かしてるスクリプトが外部リソース共有しててそれがコンフリクトしてる可能性が高い
自分で書いたものなら思い当たる節あるだろ?
644名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 12:08:53.47ID:y43CCjkS0
>>643
なるほど!確かにuwsで読み込ませてる外部ファイルは共有したままでした。

素人なんで外注して自分で書いたものではないので色々試してみます。

とりあえず外部ファイル共有をやめて試してみます。
645名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 12:53:06.21ID:y43CCjkS0
>>644
試してみたができませんでした。

ブログへの自動記事投稿をUWSCでやってるんですが、もともと実行中にマウス動かしたりするだけでバグってしまうものなので
2つ起動したらタイトルのところに本文が入ったり、本文が空のまま投稿してしまったり色々バグってしまいました。

VMwareというソフトを使って仮想化して試してみます。
2022/02/05(土) 12:57:59.37ID:LRenq4zDM
osのライセンスあるの?
2022/02/05(土) 12:59:56.35ID:Yr44NToAM
>>645
推測だがwindowIdを個別に認識できてない可能性が高いな
2022/02/05(土) 13:15:23.05ID:sWRJHoxy0
え、まさかブログ投稿ページ開いてフォーム一個一個入力してんのか?w
外注し直すか作り直した方がいいと思うのだが…
2022/02/05(土) 13:16:53.43ID:AkVx60260
そんなんで金取れるのかあ…
650名無しさん@お腹いっぱい。 (ワッチョイ d776-wadS)
垢版 |
2022/02/05(土) 13:31:17.06ID:T8il1d2s0
Pythonのほうがライブラリでの汎用性や将来性はあるけど
Windowsのステイタスバーを読み込んだり、スピーチでしゃべらせたりするのはムズイ
UWSCなら簡単にできることが手間かかったりできなかったりする
651名無しさん@お腹いっぱい。 (ワッチョイW 97b1-Flnv)
垢版 |
2022/02/05(土) 14:34:25.55ID:y43CCjkS0
>>646
購入しようと思います。

>>647
window_id = HNDtoID
となっていますね。

>>648
はい、そうです。
ワードプレスにログインし、記事タイトルと本文をあらかじめ用意しておいたcsvファイルの中からランダムで読み込んで1記事ずつ投稿しています。
他に同じような自動投稿phpバージョンがあるんですが、それなら一瞬で何百記事投稿できますが、ワードプレスに対応していないのとちょっと事情があり使えない状態です。
2022/02/05(土) 16:23:32.99ID:g1EN8qXJM
動画の長さごとに、動画を分けようとしてて、動画の再生時間を出力する方法を探してるのですが、
ネットで以下の文を拾いました
これは、選択したファイルの動画情報含めてプロパティで表示される情報を見れる文でしたが、実際に使ってみると
動画の長さ=動画の長さ
みたいな感じで表示されて惜しい感じになってます、多分当時はできてたんだと思いますが、どこ直せばいいか分かりますか?もし分かる方いたらご教授お願いします。
別にこれ使わなくても動画の長さを出力できさえすればなんでもいいです。

//エクスプローラの詳細情報を得る
dim o_Shell = CreateOleObj("Shell.Application")
dim s_dir   = get_cur_dir

//このファイルと同じフォルダにあるものとする
dim s_fileName = "目的のファイル.wmv"

//NameSpace(名前空間)でフォルダオブジェクトを作る
dim o_folder = o_Shell.NameSpace(s_dir)

//ParseNameで指定されたアイテムの FolderItem オブジェクトを作成し返す。
//FolderItem とは、フォルダに含まれる個々のファイルやフォルダのこと。
dim o_item  = o_folder.ParseName(s_fileName)

dim i
for i=-1 to 50
  //GetDetailsOfメソッドでフォルダ内のアイテムについて詳細を取得。
  dim s_columName = o_folder.GetDetailsOf(emptyparam, i)
  dim s_value   = o_folder.GetDetailsOf(o_item, i)
  s = i +" : "+ s_columName +" = "+ s_value
  print s
next
2022/02/05(土) 17:03:53.95ID:Yr44NToAM
>>652
GetDetailsOf(item, 27)で動画の長さ取れてるけど
H.264のmp4なんでwmvは試してない

>>651
HNDtoIDのパラメータが問題
2022/02/05(土) 17:22:40.05ID:DU1KoJ6d0
>>652
真空波動研Lite にD&D → Ctrl+A Ctrl+C → UWSCやテキストエディタで整形したり振り分け実行したり
2022/02/05(土) 17:30:00.50ID:DU1KoJ6d0
>>652
真空波動研Liteのコピペでは妙な改行が入るので、awk, perl, UWSCなどで行を数えて連結する等、適当に

おれ環では、真空波動研Lite MediaInfo MPC-HC で微妙に再生時間が違う
厳密にやりたいなら補正かなにか考えないといけないかもしれない
656名無しさん@お腹いっぱい。 (ワッチョイ 97b1-RTw3)
垢版 |
2022/02/05(土) 17:59:15.00ID:e/RkT3Ob0
>>653
window_id = HNDtoID( ie.hwnd )
ACW( window_id, 0, 0 )
CtrlWin( window_id, MAX )

こんな感じです。
どこか問題ありますか?

今の状態で複数のuwsを実行させるとIEを呼び出す度に前面に出てきますね。
2022/02/05(土) 18:02:46.16ID:Yr44NToAM
>>656
「ie」をどう取得してるか
2022/02/05(土) 18:28:26.76ID:WjpR15s90
IEってそろそろいろんなところで使えなくなってくるよなぁ。
659名無しさん@お腹いっぱい。 (ワッチョイ 97b1-RTw3)
垢版 |
2022/02/05(土) 18:47:05.36ID:e/RkT3Ob0
>>657
if true
call .\IEManipulation.uws
// IEを起動
ie = new_ie()
show_ie( ie )
IEManipulation.uwsの中身
// 新規IEオブジェクトを作成して返す
function new_ie()
result = createOLEobj("InternetExplorer.Application")
fend
// 起動中のIEを見えるように
procedure show_ie( ie )
ie.visible = True
wid = hndtoid( ie.hwnd )
acw( wid )
ie_pause( ie )
fend
// IEがビジー状態の間待ちます
procedure ie_wait( ie )
repeat
sleep( 0.1 )
until ( ! ie.busy ) and ( ie.readystate = 4 )
ie_pause( ie )
fend
// URLにジャンプ
procedure ie_jump( ie, url )
ie.navigate( url )
ie_wait( ie )
fend
// ポーズ procedure ie_pause( ie ) sleep( 0.2 )fend
という感じでIEを取得しているみたいです。
2022/02/06(日) 04:53:23.69ID:hCexWodL0
>>653
俺の環境だとバグってるんですよね
>>654
あんまイレギュラー因子を増やしたくなくて外部ツールを使うのは奥の手だったんですが、軽い奴ならありですね
2022/02/06(日) 19:32:50.76ID:GRIzMT5vM
>>650
音声合成はpyttsx3が簡単だった

>>660
MediaInfoのCLI版ならば任意項目のみの出力できるよ
mediainfo.exe --Inform="Video;%Duration%" aaaaa.mp4
こんなのだとミリ秒単位で数字を出力
662名無しさん@お腹いっぱい。 (スップ Sdbf-Flnv)
垢版 |
2022/02/08(火) 10:56:26.21ID:YKznksvzd
631です。

Hyper-vで仮想osを入れて無事多重起動してもうまく動くようになりました。

アドバイスくれた方々ありがとうございました。
2022/02/11(金) 16:37:05.45ID:Vp1XCJQq0
UWSCでスクレイピングをしたいのですが、わかりやすく解説してるサイトはありますか?
2022/02/11(金) 20:15:22.37ID:QxVNzurV0
ありますん
2022/02/11(金) 21:59:07.23ID:98zRi9JO0
自動化ツールスレが他になかったので質問させてください。
毎日仕事の為に、「起きる数時間前に専用のページにログイン→チェックボックスを入れて起きていることを確認」という作業をしないといけないのですが、それを自動化したいです。

・特定の時間になった時に特定の文字列をクリック

・特定の文字列をクリック

・画面上のチェックボックスをすべてチェックにする。

・特定の文字列をクリック

という流れを自動化するソフトや方法は無いでしょうか?

RocketMouse Proというソフトを買ったのですが特定の時間にファイルを実行することが出来なかったり、文字列のクリックが出来なかったので別の方法を探しています。
宜しくお願い致します。
2022/02/11(金) 22:10:07.49ID:f11g+i0N0
>>665
UWSCなら余裕で出来る

ところで君はどこまでコードを書いたんだ?
修正ならともかく
まさか、丸投げでコード全部作ってとか言う虫の良い話なら、おかえり
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

ニューススポーツなんでも実況