三流君のソースコード置き場

ブログにソースコードをアップして、ブログの検索機能で利用してます(利用予定です)

挨拶・自己紹介:「こんな感じ」や「あの、あの」と活舌の悪い、
三流プログラマーのオッサンです
Ken3三流君へ問い合わせ・連絡先:
[Ken3(管理者)へメッセージを送る], [YouTube動画にコメントを書く]
※↑質問・感想,コード修正・作成依頼など気軽に送ってください。

IEで表示されている はてなブログ 編集画面の本文を書き換えるコード

IEで表示されている編集画面の中から、
本文 テキストエリア
を探して、内容を置き換える。

そんな処理を探ってみたいと思います。

デバッグ風景の動画
https://www.youtube.com/watch?v=qdSxWCeNa2w
www.youtube.com

1.表示されているIEを捕まえる
URLに /edit が入っているかを条件にIEを探す

2.ソースの中から、本文・テキストエリアを探る

<textarea id="body" class="editor-body-textarea" name="body"
 cols="50" rows="15" placeholder="本文">
YouTubeで &lt;b&gt;有料メンバー&lt;/b&gt;?
下記、PC版YouTubeのメニュー

を探し、
textarea id=body
を見つけた

3.内容を更新する(書き換える、置き換える)
textarea id=bodyを操作したかったので、
'データをセットする
objIE.document.all("body").Value = Replace(objIE.document.all("body").Value, ":movie:w560", ":embed:cite")
と、
コードを書いてみた。

4.蛇足 更新ボタンを押す
更新ボタンを探ると

          <input type="submit"
            value="更新する"
            id="submit-button"
            class="btn btn-primary js-default-button editor-save-button editor-save-button-publish " />

が見つかるので、

objIE.document.all("submit-button").Click

と、単純に.Click で更新ボタンをクリックしてみた。

下記、
テストで作成したソースです。動画と合わせてみてください。

Option Explicit

'ブログの編集画面を探し、本文の一部を書き換え、更新ボタンを押す
Sub test20180624()

    'オブジェクトを格納する変数
    Dim objShell As Object, objWindow As Object

    Dim objIE As Object  '捕まえたIE
    
    Set objIE = Nothing  '初期化

    'シェルのオブジェクトを作成する
    Set objShell = CreateObject("Shell.Application")
    
    'ウインドウの数だけまわすぞ
    For Each objWindow In objShell.Windows
        'TypeNameでオブジェクト変数のタイプを表示する
        Debug.Print "タイプは:" & TypeName(objWindow.document)
        'HTMLDocumentだったら
        If TypeName(objWindow.document) = "HTMLDocument" Then
            'URLとタイトルを表示する
            Debug.Print "タイトル:" & objWindow.document.Title
            Debug.Print "URL:" & objWindow.document.Url
            If InStr(objWindow.document.Url, "/edit") > 0 Then 'URLの中にeditがあるか
                Set objIE = objWindow   '代入する
                Exit For  '見つけたのでループを抜ける
            End If
        End If
    Next
    Set objShell = Nothing

    'URLが見つかったか判断
    If objIE Is Nothing Then
        'メッセージ表示、終了
        MsgBox "登録するIEのページがみつかりません"
        Exit Sub
    End If

    'MsgBox objIE.document.Title & "を見つけたよ"


    'データをセットする
    objIE.document.all("body").Value = Replace(objIE.document.all("body").Value, ":movie:w560", ":embed:cite")
    
    '更新ボタンを押す
    objIE.document.all("submit-button").Click '更新ボタンをクリック
    
    'MsgBox "更新終了"

End Sub



デバッグ風景の動画※冒頭と同じです。
https://www.youtube.com/watch?v=qdSxWCeNa2w
www.youtube.com



続き 検索ボタンを押すは
ken3code.hatenablog.jp

また参考にした過去のコードこちらもヨロシク。
ken3memo.hatenablog.com


2020/05/21 追記(※アクセス数が増えたので、何かなぁと思ったら・・・ぉぃぉぃ)

www.mypath-as-variant.com
より

三流君のコードは以下のようになっていたのですが

↓--------------------------------------------------

For Each objINPUT In objIE.document.getElementsByTagName("input")
If objINPUT.Value = "検索" Then
objINPUT.Click 'クリック処理

↑--------------------------------------------------

現状のはてなの検索ボタンを押すには、

↑とても、ありがたいですね。みなさんも、いろいろとアレンジして使ってみてください。


質問・感想・クレームなど、
気軽にコメント欄に書いてもらえるとうれしいです。

[Googleフォームにコメントを残す]
↑質問・コメントの入力フォームです、気軽に書いてください


フッター:最後にKen3Videoの動画一覧を紹介します

YouTubeにアップした動画です。他の動画を一瞬でも見てもらえるとさらに嬉しいです。
再生リスト:[三流君Ken3の最新動画]←リストの一覧形式で表示する


また、ブログを見に来てくださいね。ではまたぁ~