【VBScript】WSHについて話し合うスレ【JScript】 (181レス)
上下前次1-新
23: 2020/02/02(日)22:10 ID:E6XjJVd9(1) AAS
>>20
iMacrosとかSeleniumとかWebアプリの開発で使ってる人見たことあるよ
WSHでは難しい
24(4): 2020/02/02(日)23:59 ID:ceem9FS2(1) AAS
>>20
漏れは、Ruby で、Selenium WebDriver, Nokogiri などで、
Chrome, Edge などのブラウザーを自動操作して、スクレイピングする
25(1): 2020/02/04(火)13:10 ID:yAXtWmh5(1) AAS
>>24 Rubyでブラウザを動かすためのおすすめのスクリプトありますか?
26: 2020/02/04(火)23:08 ID:89Ab/VhP(1) AA×
>>25

27: 24 2020/02/05(水)00:17 ID:NEouxGwD(1) AAS
Ruby で、Yahoo への自動ログイン
require "selenium-webdriver"
options = Selenium::WebDriver::Chrome::Options.new
options.add_option( :detach, true ) # シェルから、ブラウザを切り離す
options.add_argument( '--start-maximized' ) # 画面最大
driver = Selenium::WebDriver.for :chrome, options: options
driver.manage.timeouts.implicit_wait = 10 # default timeout
driver.navigate.to "外部リンク:login.yahoo.co.jp
element = driver.find_element(:id => "username")
element.send_key "ユーザー名"
driver.find_element(:id => "btnNext").click
element = driver.find_element(:id => "passwd")
element.send_key "パスワード"
driver.find_element(:id => "btnSubmit").click
28(1): 2020/02/09(日)18:02 ID:2hRj0kA8(1) AAS
>>24 そのスクリプトを解説するブログを立ち上げたら、めっちゃアクセスでると思います
需要が高いから
29: 2020/02/09(日)18:22 ID:s/j5AiPK(1) AA×
>>28

30: 24 2020/02/10(月)09:13 ID:8D13KkA5(1) AAS
ハローワークのインターネットサービスをスクレイピングして、こういうのが出来れば
(事業所の意向により公開していません)
と、事業所名を非公開にしている、会社を非表示にできたら
同じ会社の複数の求人を、1つだけの表示にできれば
非表示にできる会社の数を、無限に登録できれば
31: 2020/02/12(水)10:35 ID:w04clBR4(1) AAS
それこそseleniumとか使えば簡単にできるんじゃない?
人間がアクセスしてる風の時間感覚にしないとアク禁されそうだけど
32: 2020/02/13(木)00:06 ID:EA40twA9(1) AAS
どっちにしろVBSやピッコロ ◆YAZTByPXwc6oの出る幕じゃないけどね
33(2): 2020/03/01(日)21:46 ID:aiS1BF+G(1/2) AAS
バッチ処理でフォルダの処理がしたくていろいろと調べながら、ここまで書いたのですが
VBSのコードのみでは動くのですが、バッチに潜り込ませるとエラーになります。
文字コードはShiftJISにしてあります。
エラーは 〇〇.bat(1, 1) Microsoft VBScript コンパイル エラー: 文字が正しくありません。
とでます。どこが悪いのかわかる方はいませんでしょうか。
p.s WSHはもう終わりということですが、今後同じことをやる場合はPowerShellでできる(やる)ということですか?
34: 2020/03/01(日)21:46 ID:aiS1BF+G(2/2) AAS
> 33 続き
〇〇.bat
@if(0)==(0) echo off
cscript.exe //nologo //E:VBScript "%~f0" %*
echo コピー元フォルダは %srcFolder%
echo コピー先フォルダは %dstFolder%
robocopy "%srcFolder%" "%dstFolder%" /mir /r:0 /w:0 /dcopy:t /sec /fft /xjd /xjf /xf *.lnk
goto :eof
@end
Option Explicit
SetFolderName()
Wscript.Quit()
sub SetFolderName()
dim wshEnv
set wshEnv = WScript.CreateObject("WScript.Shell").Environment("Volatile")
wshEnv.item("srcFolder") = GetFolderName("コピー元のフォルダを指定してください"&vbCRLF&"例 C:\Users\ユーザー名")
wshEnv.item("dstFolder") = GetFolderName("コピー先のフォルダを指定してください"&vbCRLF&"例 D:\")
end sub
function GetFolderName(strQ)
dim wshShell, wshPath
dim PathName
set wshShell = WScript.CreateObject("Shell.Application")
set wshPath = wshShell.BrowseForFolder(0, strQ, &h1)
if not wshPath Is Nothing Then PathName = wshPath.Items.Item.Path
GetFolderName = PathName
End function
35(1): 2020/03/02(月)00:08 ID:TxSplURq(1/2) AAS
>>33
それは JScript をバッチに埋め込むときに使うテクニック。
エンジンに VBScript を指定してたら、そりゃあ1行目の1文字目でエラーになる。
36: 2020/03/02(月)00:09 ID:TxSplURq(2/2) AAS
>>33
「VBScript を混在させる技」でググって出てくるページを参考にすると良いと思う。
(この板URLが貼れないっぽい?)
でも、このバッチはドラッグ&ドロップで使った時に特定の文字(キャレットや半角空白等)を含むファイル名を正しく処理できるんかなぁ…?
試したら教えて。
37: 2020/03/02(月)17:20 ID:p3CUZnH+(1) AAS
>35 36
ありがとうございます。
これの仕組むをざっと調べた限り条件コンパイル?
みたいな感じで、jscriptが、@if〜@endまでを
実行しないみたいな仕組みで動いているようですので、
cscript呼び出しで、引数を渡すなどはできました。
ただjscriptから、戻ってきた時に値渡しする方法が、
わからず、環境変数を使う事を考えましたが、
同じプロセス内あつかいで、環境変数もまんまでは
無理でした。もうちょい色々試してみます。
ありがとうございました。
38: 2020/03/02(月)23:28 ID:8PHDRupm(1) AAS
例えば、vbs ファイルの中で、powershell コマンドも呼べる。
可読性の悪いバッチで、プログラミングしなくても、vbs 中で、robocopy を呼べば?
CreateObject("WScript.Shell").Run "powershell ""gcb | % trim | scb""", 0
例えば漏れは、バッチファイルには、
「ruby .\script.rb」みたいに、起動コマンドしか書かない
例えば下のように、そのRuby スクリプト内で、
powershell, clip コマンドを呼んで、クリップボード処理を行う
# クリップボード内の複数行文字列の、各行の先頭・末尾から、
# 連続する空白類を除去して、クリップボードに入れる
str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
ary = str.each_line.map( &:strip ) # 連続する空白類を除去する
IO.popen( 'clip', 'w:cp932' ) do | clip | # CP932 へ戻す
clip.print( ary.join "\n" )
end
39(1): 2020/04/10(金)13:47 ID:2KZut19P(1/2) AAS
Windows 10, WSL では、GUI が使えないが、
VBScript を使うと、GUIの入力ダイアログなどで、入力できるらしい!
入力ダイアログで入力 → 入力値をWindows側のファイルに保存
→ そのファイルを、Linux側で読み出して処理する
こういう簡単なサンプルを、書いてもらえませんか?
40: 2020/04/10(金)14:07 ID:bhRn7qUp(1) AAS
X入れろよ
41: 2020/04/10(金)14:11 ID:mpIpCatM(1) AAS
powershell使いなよダイアログでも独自フォームでも何でも出せるぞ
42(2): 39 2020/04/10(金)18:00 ID:2KZut19P(2/2) AAS
以下を、CP932(sjis)で、input.vbs に書いて、
WSL, Ubuntu 18.04 から、wscript.exe input.vbs と実行したら、
文字化けもせずにダイアログが表示された
wscript.exe のパスも通っている
which wscript.exe
/mnt/c/WINDOWS/system32/wscript.exe
でも、どうやって、CP932 から、UTF-8 へ変換するか?
Ruby でも使うか?
Dim Input
Input = InputBox("名前を入力してください。")
MsgBox(Input & "を入力しました。")
43: 2020/04/10(金)22:38 ID:fYJRGaFQ(1) AAS
この人物は荒らしの自覚がないようだ
113 名前:デフォルトの名無しさん[sage] 投稿日:2020/04/09(木) 15:48:38.65 ID:pqMoXxyo
荒らしは必ず、2回書き込む。
「そうだよね」とか、同意するレスを付けて、人数が多いように見せる
くだすれPython(超初心者用) その47【Ruby禁止】
Ruby禁止とか、色々なスレのタイトルを勝手に変える
工学部というコテハンだろ。
ソースコードを書かないし、プログラマーじゃないから相手をしないように!
44: 2020/04/12(日)20:29 ID:LD5vNBL5(1/2) AAS
>>42
お前は社会に不要。LANケーブルで吊れ。
45: 2020/04/12(日)20:32 ID:LD5vNBL5(2/2) AAS
WSLは好きものが使う実験環境だということをこの>>42はいまだに知らないらしい。
プログラミングは自由だが、それは若者のためだ。
ゴミジジイのためにあるんじゃねーんだよ。
46(1): 2020/04/14(火)21:32 ID:Jb9e4r2m(1) AAS
>>8
コードがXORまみれでうんざりした時、代わりに使える
あるいはひねくれたXOR交換アルゴリズム
ごめん、思い浮かばん。
47: 2020/04/14(火)21:40 ID:WCIJ8ygh(1) AA×
>>46

48(2): 2020/04/28(火)20:31 ID:f4hk4dsD(1) AAS
Rubyジジイ=ピッコロ(桃白白)=片山MZ(蟻人間)
でFAだよなあ?
全員ド下手なのが共通している。
49(1): 蟻人間 ◆T6xkBnTXz7B0 2020/04/29(水)16:29 ID:EqfxCPAQ(1/4) AAS
>>48
実はお前は20年後のオレなんだよ。
50(1): 蟻人間 ◆T6xkBnTXz7B0 2020/04/29(水)16:31 ID:EqfxCPAQ(2/4) AAS
ホントのこと言うと、お前のお母さんはオレのお爺さん。
51(2): 蟻人間 ◆T6xkBnTXz7B0 2020/04/29(水)16:38 ID:EqfxCPAQ(3/4) AAS
まあ、全人類は兄弟らしいから、みんな親族だよね。
52(1): 蟻人間 ◆T6xkBnTXz7B0 2020/04/29(水)16:44 ID:EqfxCPAQ(4/4) AAS
>>48
猿は目が2つ、鼻がひとつ、口がひとつだから、お前、猿と共通点が多いね。
上下前次1-新書関写板覧索設栞歴
あと 129 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.027s