はてなBookmarkに登録

UWSCその後 - Yahoo!ブログへ自動投稿

UWSCを触り始めて1週間とちょっと、だんだん使い方が分かってきたので、試しにYahoo!ブログへ自動投稿するスクリプトを作ってみました。こんなの参考にする人が居るかどうか…。

スクリプト本体は、こんな感じです。UWSCはVer 4.3Cを使っています。
エラー時の処理とか何も入ってないですね…。
// -------------------------------------
// 初期データ設定
// -------------------------------------
CONST YahooID = "YahooのID" // Yahoo ID
CONST YahooPASS = "Yahooのパスワード" // Yahoo PASSWORD
CONST DataFile = "C:\uwsc\data.txt" // データ用ファイル
CONST Blog_url = "http://blogs.yahoo.co.jp/hoge/" // ブログのURL

// -------------------------------------
// スクリプト部分
// -------------------------------------

// 書き込み用データファイルを開く
File_ID = FOPEN(DataFile, F_READ)

// 書き込みデータ用ファイルが無い場合は終了
if File_ID < 0 then EXITEXIT

// 書き込み用データファイルを読み込む
entry_len = FGET(File_ID, -1) // 書き込み用データファイルの行数を取得
entry_title = FGET(File_ID, 1) // 1行目の「タイトル」を読む
entry_syoko = FGET(File_ID, 2) // 2行目の「書庫名」を読む
entry_body = ""

// 本文を読む(3行目から最後まで)
for i = 3 to entry_len
entry_body = entry_body + FGET(File_ID, i) + "<#CR>"
next

// Internet Explorerの起動
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate(Blog_url)
BusyWait(IE)

// ログイン
IELink(IE, "ログイン")
BusyWait(IE)

IESetData(IE, YahooID, "login")
IESetData(IE, YahooPASS, "passwd")
// IELink(IE, "ログイン") // SUBMIT
// IESetData(IE, True, "null", "ログイン") // SUBMIT
KBD(VK_TAB)
KBD(VK_TAB)
KBD(VK_RETURN)
BusyWait(IE)

// 新規投稿へ
IE.Navigate(Blog_url + "MYBLOG/write.html")
BusyWait(IE)

// タイトル、書庫、本文をそれぞれ書き込む
IESetData(IE, entry_title, "title")
IESetData(IE, entry_syoko, "_fid")
IESetData(IE, entry_body, "content")

// 「決定」ボタンをクリック
for i = 0 to IE.document.body.all.tags("a").Length -1
ifb Pos("javascript:submitAll()", IE.document.body.all.tags("a").Item[i].href)>0
IE.document.body.all.tags("a").Item[i].Click
break
endif
next
BusyWait(IE)

// ログアウト
IELink(IE, "ログアウト")
BusyWait(IE)

// Internet Explorerを閉じる
IE.Quit
sleep(5)

//------
Procedure BusyWait(ie)
repeat
Sleep(0.2)
until (! ie.busy) and (ie.readyState=4)
Fend
書き込みデータ用ファイルは、こんな書式です。
1行目はタイトル
2行目は「書庫名」
3行目以降は本文
ログイン処理の所が上手くいかず、TABキー押下でごまかしています(KBD(VK_TAB)の所)。

これで一応動いてくれているので、一応は目的達成です。
ただ、目的は達成したものの、ブログに書くネタを用意していなかったので、意味無かったりして…。
やっぱり、一番大事なのはコンテンツの中身でしょう。
投稿者 Izumi : 22:57 | PC / Net

トラックバック

このエントリーのトラックバックURL:
http://www.simazaki.com/~izumi/cgi-bin/tt-cgi/tt_tb.cgi/507

コメント

非常に参考になりました。
私は、初めて2週間ぐらいなのですが、ここまで出来ません。

色々検索していてこのページを見つけたんですが、1週間でここまで出来るとはすごいです。

投稿者 UWSC初心者 : 2007年12月3日 02:02

はじめまして。
Yahoo!ブログへ自動投稿するスクリプトをそのまま使わせていただきました。素晴らしいです!
(このようなものをずっと探していました)

ところで、UWSCは、スケジューラーも搭載している見たいなので、複数記事を1週間毎とか、投稿できれば、もっと素晴らしいと思いましたが、
そういうことはどうすれば可能でしょうか?
出来ればご伝授願いたいです。(難しいでしょうか?)

よろしくお願いします。
直接メールアドレスに返信いただいても結構です。
しの

投稿者 UWSCは面白そう! : 2008年7月30日 23:45

スクリプトがお役にたてたようで嬉しく思っております。

UWSCのスケジューラ機能ですが、
 設定メニュー
 →スケジュール設定をする
  →タイマー設定
で、何分おきに起動とか、毎日/毎週の何時に起動とか設定できるようですね。

タイマー設定で、時間指定の毎週(x曜日)を指定すれば、ご希望の動作になるのかと思います。

投稿者 Izumi : 2008年7月31日 23:23

コメントしてください




保存しますか? はいいいえ


 
< 2007年10月 >
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
サイト内検索
Recent Comments
Recent Trackback
リンクリスト