ActionITコミュニケーション問い合わせTwitterFacebookContactRSSHomeITWebページを自動操作してみたWebページを自動操作してみた2019.01.27TweetShareたまに入ります。IT系の記事の1つです。今回はプログラムを書いて、WEBブラウザを操作し、WEBページの情報を収集したり、WEBページの入力欄に文字を記入していくのを自動でおこなう事を目的にしています。※プログラム経験者向けの内容です。複数のイベント告知サービスへの投稿を自動的に行う事ができています。次のプログラムの目標は、情報収集とワードクラウドの生成ですね。複数のイベント告知用サービスを平行して使っていました。告知文を考えた後に載せ方を『考える』という一手間が追加されていました。Explorerを操作するプログラムはやった事があったので、GoogleのChromeも操作してやれれば・・・と言うことで調査して、プログラミングを実行しました。面倒くさいを無くすために、面倒くさいプラグラミングを実行する。Chromeはそのままでは外部からのコントロールは受け付けない。間を中継してくれるソフトを使うことにしました。BasicChromeDriverインストールしたり、VBAで参照設定してあげて準備完了です。SeleniumやChromeドライバは他の言語でも使えるので、WEBフロントの自動テストで使っていると言うのをみました。一通りの手入力操作と同じ事はできました。項目の取得にはセレクタで指定してとります。単一項目の取得だけでなく、複数項目の取得にも対応しているので、色々できます。今回はVBAよりもHTMLソースを眺めている時間が長かったちょっと厄介なやつらテキストやリンク、ボタンなんかは取得して操作で終わりなんですが、ちょっと一筋縄ではいかなかったコントロール達があります。・ドロップダウン実際はSelenium(Chromeドライバー)で対応していますが、見つかるまで操作できないんじゃ?と思った。AsSelectとSelectElemntに対するSelectBy~で値を選択していきます。→値選択driver.FindElementById(“hoge”).AsSelect.SelectByIndex(“?”)・カレンダーここからが個別対応だった。入力できるカレンダーか、マウス操作のみのカレンダーかで大分プログラムが変わります。カーソルキーで選択日を動かして、Enterキーで確定させたりもしました。・タイムピッカーカレンダーと同じ理由です。入力できる所でも、裏かJavaScriptで加工されているみたいで、しっかりと値設定は諦めてます。最後に動作状況の動画を置いておきます。(早送りではなく、実際のスピードですよ)※動画の一部に加工をしています。※Fimoraのウォーターマークが入ってます。課題発見コンサルタントとして、企業の人材活性化のための課題を明らかにして人財作りと企業の成長をサポートします。