gooブログ 保存/投稿スクリプトに、自動ログイン機能をとって付けてみました。
ブログの編集中にこのスクリプトを起動すれば、保存と投稿を一度に
実行するのは以前のままですが、編集画面にしていないときに起動すると
(当然、保存も投稿もできませんので)
その代わりに gooにログインする画面を表示するようにしました。
変数 sAccount にアカウント名を、sPassword にパスワードを設定して下さい。
最初は
sAccount = ""
sPassword = ""
と空になってますので、アカウント名が aaa、パスワードが bbbなら
sAccount = "aaa"
sPassword = "bbb"
のように書き換えて下さい。
それ以外の変更はありませんので、マニュアルをどうぞ。
拡張子vbsで保存・実行して下さい。
--------------------
ブログの編集中にこのスクリプトを起動すれば、保存と投稿を一度に
実行するのは以前のままですが、編集画面にしていないときに起動すると
(当然、保存も投稿もできませんので)
その代わりに gooにログインする画面を表示するようにしました。
変数 sAccount にアカウント名を、sPassword にパスワードを設定して下さい。
最初は
sAccount = ""
sPassword = ""
と空になってますので、アカウント名が aaa、パスワードが bbbなら
sAccount = "aaa"
sPassword = "bbb"
のように書き換えて下さい。
それ以外の変更はありませんので、マニュアルをどうぞ。
拡張子vbsで保存・実行して下さい。
--------------------
' gooブログ ログイン/保存/投稿スクリプト(05/07/04) ' gooブログのアカウント名とパスワードを設定します。 ' sAccount = ""、sPassword = "" のように空にしておくと、 ' 自動でのログインは行いません。 sAccount = "" sPassword = "" ' クリップボードへ保存するか、ファイルへ保存するか、 ' もしくは両方に保存するかを設定します。 ' クリップボードへのみ保存する場合は、1 を ' ファイルへのみ保存する場合は、2 を ' 両方へ保存する場合は、3 を設定して下さい。 iSaveMode = 3 ' ファイルへ保存する場合は、このファイル名で保存します。 ' iSaveMode が 2 か 3 の時に必要になります。 sLogFilename = "gooblog.txt" ' スクリプトを実行することで、保存と投稿を同時に行います。 ' スクリプトの役割は保存だけに専念させて、 ' 投稿ボタンは自分でクリックする場合には、bSubmit = False にします。 bSubmit = True ' 『クリップボードをgooブログに新規投稿するスクリプト』との互換性を設定します。 ' 互換性を無視する場合は、トラックバックURLを3つ全て保存できます。 ' この場合は、iSaveTb = 3 を設定して下さい。 ' 互換性を保持する場合は、トラックバックURLを1つまで保存できます。 ' この場合は、iSaveTb = 1 を設定して下さい。 ' また、iSaveTb = 0 を設定することでトラックバックURLを保存しません。 ' 保存した記事データを再利用した時に、意図しない二重トラックバックを ' 予防することが目的です。 iSaveTb = 0 ' カテゴリーチェック。この部分は少々複雑です。この値を True に ' セットすることで、カテゴリー名も保存します。 ' bCheckCategory = True に設定した場合、スクリプト末尾に記述してある ' 関数 saveCategory 内に正しくデータを設定する必要があります。 bCheckCategory = False ' ファイルへ保存する際の、記事の区切りです。 sHorizon = "========================================" ' トラックバックURLの区切り文字です。 ' iSaveTb = 3 の時に必要になります。 sTbChr = vbNewLine ' ログイン時のウェイト(ミリ秒) iSlp = 3000 ' ■■■ 設定ここまで ■■■ Set oSh = CreateObject("Shell.Application") ii = 0 iGooEdit = -1 bGooEdit = False For Each oIE In oSh.Windows If TypeName(oIE.document) = "HTMLDocument" Then If oIE.document.URL = "http://blog.goo.ne.jp/admin.php?fid=newentry" Or Left(oIE.document.URL, 45) = "http://blog.goo.ne.jp/admin.php?fid=editentry" Then If iGooEdit = -1 Then iGooEdit = ii Else bGooEdit = True End If End If End If ii = ii + 1 Next If iGooEdit = -1 Or bGooEdit Then If vbOk = MsgBox("編集ウィンドウが無いか、もしくは複数見つかりました。" & vbNewLine & "OKボタンを押すと、編集画面を表示します。" & vbNewLine & "(未ログイン時は、gooID ログイン画面を表示します)", vbOkCancel) Then gooLogin() Else WScript.Quit End If Else Set oIE = oSh.Windows(iGooEdit) sTitle = oIE.document.forms("entryForm").all.title.value sText = oIE.document.forms("entryForm").all.text.value sTime = oIE.document.forms("entryForm").all.time.value For ii = 0 To oIE.document.forms("entryForm").all.draft.length - 1 If oIE.document.forms("entryForm").all.comment(ii).checked Then iComment = ii Next For ii = 0 To oIE.document.forms("entryForm").all.draft.length - 1 If oIE.document.forms("entryForm").all.draft(ii).checked Then iDraft = ii Next If bCheckCategory Then Set dCate = CreateObject("Scripting.Dictionary") saveCategory() sCategory = oIE.document.forms("entryForm").all.category.value sCategory = dCate.Item(sCategory) Else sCategory = "" End If Select Case iSaveTb Case 0 sTrackback = "" sOpt = ";" & sCategory & saveOption(iComment, iDraft) Case 1 If oIE.document.forms("entryForm").all.trackback_url.value <> "" Then sTrackback = "tb" & oIE.document.forms("entryForm").all.trackback_url.value & vbNewLine Else sTrackback = "" End If sOpt = ";" & sCategory & saveOption(iComment, iDraft) Case 3 If oIE.document.forms("entryForm").all.trackback_url.value <> "" Then _ sTrackback = oIE.document.forms("entryForm").all.trackback_url.value & sTbChr If oIE.document.forms("entryForm").all.trackback_url2.value <> "" Then _ sTrackback = sTrackback & oIE.document.forms("entryForm").all.trackback_url2.value & sTbChr If oIE.document.forms("entryForm").all.trackback_url3.value <> "" Then _ sTrackback = sTrackback & oIE.document.forms("entryForm").all.trackback_url3.value & sTbChr sOpt = sCategory End Select sClip = sOpt & vbNewLine & sTitle & vbNewLine & sTrackback & sText & vbNewLine If iSaveMode = 1 Or iSaveMode = 3 Then Set oIEA = CreateObject("InternetExplorer.Application") oIEA.Navigate "about:blank" Set oClip = oIEA.Document.ParentWindow.ClipboardData oClip.setData "text", sClip Set oClip = Nothing Set oIEA = Nothing End If If iSaveMode = 2 Or iSaveMode = 3 Then Set oFSO = CreateObject("Scripting.FileSystemObject") Set oFSOw = oFSO.OpenTextFile(sLogFilename, 8, True) oFSOw.Write sHorizon & vbNewLine oFSOw.Write sClip oFSOw.Close Set oFSOw = Nothing Set oFSO = Nothing End If If bSubmit Then oIE.document.forms("entryForm").Submit() End If End If WScript.Quit Sub gooLogin() Dim oIE Set oIE = CreateObject("InternetExplorer.Application") oIE.Visible = True oIE.Navigate "http://blog.goo.ne.jp/admin.php" While oIE.busy Wend If oIE.document.title = "gooID" And sAccount <> "" And sPassword <> "" Then oIE.document.forms("f1").all.uname.value = sAccount oIE.document.forms("f1").all.pass.value = sPassword WScript.Sleep(iSlp) oIE.document.forms("f1").Submit() WScript.Sleep(iSlp) End If End Sub Function saveOption(iComment, iDraft) ' 『クリップボードをgooブログに新規投稿するスクリプト』用のオプション saveOption = ";" If iComment = 1 Then saveOption = saveOption & "c" If iDraft = 0 Then saveOption = saveOption & "d" saveOption = saveOption & "p" End Function Function saveCategory() ' 「カテゴリー」を設定します。gooブログ編集画面のソースを参考に、 ' ご自分のカテゴリー名とその値を設定して下さい。 dCate.Add "aa11bb22cc33dd44ee55ff66gg77hh88", "Weblog" dCate.Add "ii99jj00kk11ll22mm33nn44oo55pp66", "ユーティリティ" End Function
※コメント投稿者のブログIDはブログ作成者のみに通知されます