No.3ベストアンサー
- 回答日時:
>"TITLE"という名前のフォルダが作成
>"TITLE\ccc.txt"の中身は"URL"という文字列
変数の中身の参照は、% % で囲みます。
mkdir "%TITLE%"
echo %URL% >> "%TITLE%\ccc.txt"
にしてください。
>"delims="
>とはどういう意味なのでしょうか。
delimsの初期値は空白とタブなので、これを書かないと、タイトル中に空白があった場合、空白で区切った最初の単語だけが%%Aに入ります。実際にやってみてください。
"delims="と書くことで「区切り文字無し」となりタイトル全部が区切られずに%%Aに入ります。
>のFor Each ~ Nextループで複数のウインドウの情報を取得しようとしているようですが、ウインドウ一つだけ取得するにはどう書き換えればよろしいのでしょうか。
ウィンドウが1つしか無ければ問題ないですよね。複数あった場合、最初の1つだけ取るならIF文できますが、それが希望のウィンドウとは限らないので、この方法では無理があると思います。
アクティブなタブ、アクティブなウィンドウの検知については私がわからないだけかもしれないので、このあたりを何とかしたいなら、WSH Lab.で聞いてみて下さい。
変数の中身参照の仕方やdelimsなど、バッチプログラミングの説明までしていただき大変助かりました^^。
ありがとうございました。
アクティブなタブ、ウインドウを検出する方法か、別の方法を探してみたいと思います。
No.2
- 回答日時:
#1です。
IEでも開いているウィンドウの情報がすべて出てきます。アクティブなウィンドウを調べるのは可能かもしれませんが、分かりません。
タブブラウザのアクティブなタブを知るのはVBSでは無理な気がします。どれがアクティブかはそのソフトの中で決まっていることなので。
WSH関係で高度な情報のあるBBSがあるので下記にURLを書いておきます。
>・それから、URL、タイトル、選択文字列がワンセットになっていますがひとつずつ渡すにはVBSをどのように記述したらよろしいのでしょうか。理解不足ですみません;。
引数を渡してそれにより出力内容を変えることも出来ますが、URL出力専用、タイトル出力専用にそれぞれ別のVBSファイルにするのも分かりやすいですね。
>・実は自作バッチファイルの方も試行錯誤の段階で、今はとりあえず下記のようなことをやろうとしています
やりたいことがよくわからないのですが、もし、ウェブページのスクラップのようなことがしたいのなら、「紙2001」http://www.ki.rim.or.jp/~kami/ はどうでしょうか?もしやりたいことがちがうとしても、「そもそもの本来やりたいこと」を質問されたほうが適切な回答が得られる可能性が高いと思います。
参考URL:http://www.roy.hi-ho.ne.jp/mutaguchi/bbs/index.s …
この回答への補足
・この手の機能をWSHというんですか。結構本格的なものなんですね。参考になります。
VBSでアクティブタブを知るのは無理ですか;。
ショートカットキーからの呼び出しもそうだと思いますがこのあたりはブラウザに依存が強い内容なんでしょうかね・・・。
とりあえずタブを一つだけ開いた状態でならできそうですので試してみました。
[title.vbs]
******************
For Each window In WScript.CreateObject("Shell.Application").Windows
Set document=window.document
If typename(document)="HTMLDocument" Then
WScript.Echo document.title
End If
Next
******************
[url.vbs]
******************
For Each window In WScript.CreateObject("Shell.Application").Windows
Set document=window.document
If typename(document)="HTMLDocument" Then
WScript.Echo document.location.href
End If
Next
*******************
[tu.bat]
*******************
cscript //nologo title.vbs > file1.txt
cscript //nologo url.vbs > file2.txt
for /f "delims=" %%A in (file1.txt) do set TITLE=%%A
for /f "delims=" %%B in (file2.txt) do set URL=%%B
mkdir "TITLE"
echo "URL" >> "TITLE\ccc.txt"
********************
という3つのファイルを同一フォルダ内の用意し、tu.batを実行してみました。
その結果
"TITLE"という名前のフォルダが作成
"TITLE\ccc.txt"の中身は"URL"という文字列
となりました。%%A、%%Bにいれた値(文字列)をfor文の外で利用できないのでしょうか。
それからNo1の解答のときに書いてくださったコードについて伺いたいのですが、
・http://ykr414.com/dos/dos05.html#07
によると
delimsは区切り文字セットということですが
"delims="
とはどういう意味なのでしょうか。
・set URL=%%A&goto L1
ではURLという変数に現在の%%Aの値を代入しているのではないのでしょうか。
・For Each window
・・・
・・・
Next
のFor Each ~ Nextループで複数のウインドウの情報を取得しようとしているようですが、ウインドウ一つだけ取得するにはどう書き換えればよろしいのでしょうか。
・紙2001やWebox、WebAutoなどWebを保存できるソフトをいろいろ使ったのですが、Webデータを自前プロキシのキャッシュとして保存する機能を持っていないものが多く、一部のJAVAアプレットなどうまく保存できないコンテンツがあるんですよね。
それで今のところはプロキシ機能を持っているWeb保存ソフトGethtnlを使っています。
No.1
- 回答日時:
IEに表示中のページで、URL、タイトル、選択中文字列であれば、vbsで、
For Each window In WScript.CreateObject("Shell.Application").Windows
Set document=window.document
If typename(document)="HTMLDocument" Then
WScript.Echo document.location.href
WScript.Echo document.title
If document.selection.createRange().text="" Then
WScript.Echo "(not select)"
Else
WScript.Echo document.selection.createRange().text
End If
End If
Next
これを、aaa.vbs 等の名前をつけて、自作バッチファイル中で、
cscript //nologo aaa.vbs > file.txt
for /f "delims=" %%A in (file.txt) do set URL=%%A&goto L1
:L1
for /f "skip=1 delims=" %%A in (file.txt) do set TITLE=%%A&goto L2
:L2
for /f "skip=2 delims=" %%A in (file.txt) do set SELECTION=%%A
IE画面が複数開かれていれば、画面数x3行出力されるので、それを考慮してください。また特殊文字が含まれていると、バッチ処理がエラーになるかもしれませんが、それはバッチ機能の制約です。VBSを勉強して全てVBSで書くのが良いかと思います。
>選択中リンクのリンク先タイトル
これは実際に開かないと分からないと思います。
>選択中リンクのリンク先URL
これはちょっと調べられませんでした。無理かなあ。
IE以外のIE系ブラウザは分かりませんが、sleipnirならスクリプトが書けるので可能かもしれません。具体的なターゲットのブラウザソフトがあるなら、そのブラウザのコミュニティで聞くほうが早いと思います。
この回答への補足
ご回答くださりありがとうございます。VBSですか・・・
・とりあえず
For Each window In ・・・・
をaaa.vbsに記述。
cscript //nologo aaa.vbs >・・・・
をaaa.batに記述。
aaa.vbsとaaa.batを同フォルダに配置。そして「ぶら。」という名のIEコンポーネントブラウザで閲覧中aaa.batを実行しました。
その結果
***********************
http://www.vector.co.jp/vpack/filearea/win/writi …
Download: Windows > 文書作成 > その他
(not select)
http://www.vector.co.jp/vpack/filearea/win/busin …
Download: Windows > ビジネス > 計算・表計算・グラフ > 表計算
(not select)
http://www.hanshintigers.jp/team/profile/18.html
阪神タイガース公式サイト
(not select)
cscript //nologo aaa.vbs > file.txt
for /f "delims=" %%A in (file.txt) do set URL=%%A&goto L1
:L1
for /f "skip=1 delims=" %%A in (file.txt) do set TITLE=%%A&goto L2
:L2
for /f "skip=2 delims=" %%A in (file.txt) do set SELECTION=%%A
***********************
というfile.txtが作成されました。
・結果を見ると、全てのタブのURL、タイトル、選択文字列情報を取得してしまいますが、現在アクティブになっているタブに関してのみURLなどを送るにはどうしたらよろしいのでしょうか。(IEだとアクティブになっているウインドウに対応しそうな気がするのですが)
・それから、URL、タイトル、選択文字列がワンセットになっていますがひとつずつ渡すにはVBSをどのように記述したらよろしいのでしょうか。理解不足ですみません;。
・実は自作バッチファイルの方も試行錯誤の段階で、今はとりあえず下記のようなことをやろうとしています。(文法におかしいところがあるかもしれません・・;)
%1にタイトル(または選択文字列)、%2にURL(選択中リンクのリンク先URL)を渡します。
********************************************
if exist "C:\%1" goto Error else goto Main
:Error
echo "EXIST!"
goto End
:Main
rem テンプレートフォルダを中身ごと、タイトル名のフォルダにコピー
xcopy "C:\templete" "C:\%1" /I
rem "C:\%1"に置いてある"test.txt"にURLと改行を追加
echo "%2\n" >> "C:\%1\test.txt"
rem "C:\%1"に移動
cd "C:\%1"
rem "C:\%1"にある別のバッチファイルを起動
call ght.bat
rem "C:\%1"を開く
C:\Windous\explorer.exe "C:\%1"
goto End
:End
*******************************************
・「ぶら。」にはスクリプト機能はないようですね。
SleipnirはIEコンポーネントではないですよね。乗り換える踏ん切りがつきません・・・。
http://tabbrowser.ktplan.jp/angband.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelに文字データのみを貼り付けたい 8 2023/05/03 15:38
- JavaScript jsで診断コンテンツのページ内切り替えについて 1 2023/04/14 17:31
- Excel(エクセル) Excelでの検索結果を含む行だけを表示させたい 5 2023/03/10 17:08
- Word(ワード) リンクが作動しない 7 2022/12/23 14:15
- Chrome(クローム) 【 Chrome 】鎖のアイコンの「Copy Link Text」が機能しなくなりました。 1 2023/03/27 10:32
- Excel(エクセル) VBA オリジナル関数で選択セルの合計を作成したい 3 2023/03/19 19:45
- HTML・CSS HTMLのフォームについてお尋ねします 1 2022/12/03 21:47
- JavaScript ブックマークレットについて 2 2022/10/09 11:48
- Excel(エクセル) Excelにの以下の設定方法について教えてください! C列にデータ入力の設定をしています。(出、入を 3 2022/06/22 01:33
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
バッチ処理でファイルの中身を変数に入れるやり方
その他(プログラミング・Web制作)
-
バッチファイルでchromeのタブを増やさずページを変更したい
Chrome(クローム)
-
ブラウザ起動~ログインまでのバッチ化
Android
-
-
4
バッチファイル (WEBページを別ウィンドウで開く方法)
Windows Vista・XP
-
5
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
自分のサイトを開いた時にウィ...
-
ホームページに効果音
-
IEで別サイトをタブで開きたい
-
C#でTabcontrol内の値取得について
-
プルダウンメニューの開く方向...
-
マニアックなショートカットキー
-
ウインドウを最前面で固定するタグ
-
FindWindowの使い方
-
AfterEffectsでイージーイーズ...
-
GoogleChromeでレイアウトが左...
-
XMLを作成してもタグしか表示さ...
-
Access-テキストボックスの「#N...
-
\\n \\r \\t について
-
aviutlで最後まで動画が読み込...
-
HTMLのバージョンの確認方法は?
-
キーフレーム
-
長いURLを途中で改行(折り返す...
-
Tシャツの刺しゅうがチクチクす...
-
photoshopのアニメーションで拡...
-
「:」について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウンメニューの開く方向...
-
新しいタブで開かせない方法は...
-
自分のサイトを開いた時にウィ...
-
指定URLを新しいウィンドウで開...
-
DBからPDFを取得して別画面で表...
-
FindWindowの使い方
-
表示中のURLなどをバッチファイ...
-
HTML 全画面表示 リンク先の...
-
ASP.Net 別ウィンドウを開く・...
-
ハイパーリンクからメニュー無...
-
VC++2010 MFC サイズの最大化に...
-
IEで別サイトをタブで開きたい
-
googleマップをポップアップウ...
-
QT 半透明の画面生成について
-
VC、コンソールアプリ結果の...
-
OpenCVのcvNamedWindowによるウ...
-
_blank?_brank?
-
ウインドウを最前面で固定するタグ
-
ホームページビルダーでのドロ...
-
HTML,js)リンクを新しいタブで...
おすすめ情報