サイトが更新されたら、指定したアドレスにWebページが更新されました。というメールが届くようにしたいのですが、どのようにプログラムを書いたら良いですか?
言語はなるべくvbaがいいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
VBAのことは知りませんが、一般論は次のようになるかと
1.対象のWebページのURLを入力するとそのページのHTMLを取得して出力する関数を書く
2.1で作った関数を定期的に実行して、HTMLを取得する。取得した時、前回見た時のHTMLと比較して、違う部分があれば何か更新があったということ、違う部分がなければ何も更新がなかったということ
3.指定したアドレスに指定した文章のメールを送信するプログラムを書く
4.2で、更新を検知したら、3で作ったプログラムに渡して、メールを送信する
投稿2017/11/22 11:02
退会済みユーザー
総合スコア0
0
VBAってことはExcelとかAccess上で動かすのでしょうか。
ところで、VBAからネットにアクセスする方法はどのくらい把握していらっしゃいますか。
webページにアクセスするだけなら、無償で使えるMSXML2.XMLHTTPを駆使すれば出来なくもないですが、
「webサイトやwebページの更新」をどういう条件で検出するか、
例えばGETリクエストを送って得られる応答データのサイズの変化を見るとか、
応答データ内の特定の文字列を検出するとか、
そういうやり方になりそうかなと。
HTTP通信そのものの制御や情報は活用できないでしょうから。
事例は、「MSXML2.XMLHTTP VBA」などとして検索すれば見つかるでしょう。
SJISやUTF-8じゃないエンコーディングだと厄介かもしれませんが。
問題は、メールを送信する部分でしょうか。
BASP21 Proを組み込めば
メール送信ができるかもしれません。
重ねていいますが、VBA標準ではネットの操作はできないに等しいので、
もっとネットを楽に扱える軽量な言語でやるとよいとおもいます。
perl, python, rubyなどなど。
投稿2017/11/22 11:01
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/11/22 12:01