自動化

【2024年4月最新版】Google ChromeをC#のSeleniumを使用して自動化してみよう!! 

ChatGPTのAPIを使わずに自動化することが可能です。
下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。

まえがき

こんにちは、サルモリです!

今回はC#のSeleniumの使い方について解説していくのでよろしくお願いします。

今回の記事のテーマは下記です。

今日のテーマ

Google Chromeの操作を自動化してみよう。ブラウザを立ち上げて、google検索が出来る所まで実装してみよう。

C#で早速Webを立ち上げてみよう!!
サルモリ

注意

visual studioは各自ダウンロードをお願いします。サルモリのは、visual studio 2019です。

自動化の関連記事はこちら

 

Seleniumを応用した記事を作りました。こちらも記事も是非みてください。

こちらもCHECK

【2024年2月最新版】C#でMicrosoft Edgeを自動化してみよう

ChatGPTのAPIを使わずに自動化することが可能です。 下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。 まえがき こ ...

続きを見る

Seleniumの準備

step
1
Visual studioを立ち上げたら、ツールのNuGetパッケージの管理を開きましょう。

step
2
続けて、Chromeで検索し、下記をインストールしよう。

  • Selenium.WebDriver.ChromeDriver

step
3
下記のURLから最新版のChromeドライバーをダウンロードしましょう。

https://googlechromelabs.github.io/chrome-for-testing/

下記のURLをコピーして、URL欄に貼り付けすれば、ダウンロードすることができます。

私はWindowsの64ビットのドライバーをダウンロードします。

step
4
「chromedriver.exe」がダウンロードされるので、任意のフォルダに置いてください。サルモリはCドライブのdriverフォルダに置きます。

サルモリ
以上で準備完了だよ!!

ブラウザの表示の仕方

下記のコードを記述してみてください。

【2024年2月追記】下記の方法でパスを指定しなくてもドライバを取得することができます。

 

上記のコードを実行すると、Googleが立ち上がります。Navigate().GoToUrlの引数には指定したURLを記述します。

サルモリ
googleが立ち上がったね!!

注意

「@"D:\selenium"」は、Dドライブのseleniumフォルダに「chromedriver.exe」を置いた場合です。

データの取得には下記の記事もオススメです!

こちらもCHECK

【C# sharp】 Seleniumで、ポケモン攻略の種族値一覧を取得し、CSVに書き込んでみた。

ChatGPTのAPIを使わずに自動化することが可能です。 下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。 今回のテーマ ...

続きを見る

自動化の関連記事はこちら

googleでの検索方法

続けて、下記のコードを実行してみよう。

【2024年2月修正】driver.FindElementByXPathは最新版のSeleniumでは使えなくなりました。変わりにFindElementメソッド内でBy.XPathを指定しましょう。

上記のコードを入力すると自動的にテキストボックスに入力し、画面が遷移したと思います。

Googleの検索のテキストエリアの属性は下記となっています。textarea内のclassがgLFyfを指しています。

サルモリ
yahooを検索できたね!

属性の取得方法を学ぼう

上記のように属性の取得方法を学びましょう!!

サルモリ
取得方法を学べば、ほとんどのウェブサイトの自動化ができるよ。

step
1
まず、google画面を開きます。

 

step
2
F12キーをおしてください。右側に下記のウィンドウが表示されます。

step
3
開いたウィンドウの左上側にあるクリックしている図を押しましょう。

step
4
検索テキストボックスにカーソルを合わせてクリックしてみてください。右にコードが表示されます。

 

step
5
薄っすらと灰色で塗られたhtmlのソースコードが対象のテキストボックスです。

サルモリ
ソースコードと見比べてみよう!

htmlとソースコードの見比べ

html

ソースコード

見比べてみると、classがどちらとも「gLFyf」となっていることが分かりますね!!

以上の手順で対象のテキストボックスを調べることができます。

対象のテキストボックスを指定した後に、SendKeysメソッドの引数に入力したい文字列を指定してあげましょう!

サルモリ
検索ボタンも同じように調べてみよう!

検索ボタンをクリックしました。

前回の記事のソースコードと見比べてみると。

htmlとソースコードの見比べ

html

ソースコード

こちらも見比べてみると、classがどちらとも「gNO89b」となっていることが分かります!!

ボタンの押下には、Clickメソッドを使用します!

クラスだけでなく、valueも指定できます。

サルモリ
今回の例では、valueは「Google 検索」だね!!

nameなどでもできるので、色々試してみてください。python言語なども基本的に同じです。

データの取得には下記の記事もオススメです!

こちらもCHECK

【C# sharp】 Seleniumで、ポケモン攻略の種族値一覧を取得し、CSVに書き込んでみた。

ChatGPTのAPIを使わずに自動化することが可能です。 下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。 今回のテーマ ...

続きを見る

自動化の関連記事はこちら

自動化に便利なメソッド

下記の使い方を学んでみよう。

【2024年2月追記】最新版のSeleniumでは、FindElementByIdなどのメソッドは廃止されました。

メソッド一覧

  • FindElement(By.Id()) (元FindElementById)
  • FindElement(By.Class()) ( 元FindElementByClassName)
  • FindElement(By.Name()) (元FindElementByName)
  • Close
  • Back
  • Forword
サルモリ
早速使い方をみていくよ!

FindElementByClassName

まずは、FindElementByClassNameを使っていきましょう。

サルモリ
XPATHより全然簡単だよ。

googleの右上のGmailをクリックしてみます。まず、タグ名を調べます。クラス名を確認しましょう。

gmailの属性

下記のコードを入力してみましょう。画面が遷移するはずです。

FindElementById

FindElementByIdを続けて使ってみましょう。遷移した画面のテキストボックスを調べます。

 

idを指定しましょう。下記のソースコードを記述してみます。

KappaChanと記述されましたね。

 

 FindElementByName

FindElementByNameも基本的には同じです。google画面の検索ボックスを調べてみます。

下記のソースコードを記述してみます。

「sarumori」と記述されましたね。

自動化の関連記事はこちら

Close

Closeメソッドでは、開いたブラウザを閉じることができます。

Back

Backメソッドはブラウザを戻ることができます。ブラウザの左上にある戻るボタンと同じ挙動ですね。

Forword

Forwardメソッドはブラウザを進ませるができます。ブラウザの左上にある進むボタンと同じ挙動ですね。

まとめ

これでSeleniumの基本的な使い方は終わりです。結構簡単に実装できるので、ぜひ覚えてくださいね!

次の記事ではhtmlの属性の探し方などを記事にしたいと思います。

取り上げたメソッドを存分に使ってみます。

クラス名などが変わっていましたね^^;下記のソースコードを修正しました。

サルモリ
今までのコードを存分につかってみよう!

画面がたくさん遷移して、自動化されていることが実感できると思います。

これでSeleniumの基本的な使い方は終わりです。結構簡単に実装できるので、ぜひ覚えてくださいね!

次の記事ではhtmlの属性の探し方などを記事にしたいと思います。

サルモリ
今回はここまでだよ!

ブラウザはedgeですが、参考になると思います。

CHECK

Seleniumを応用した記事を作りました。こちらも記事も是非みてください。

こちらもCHECK

【C# sharp】 Seleniumで、ポケモン攻略の種族値一覧を取得し、CSVに書き込んでみた。

ChatGPTのAPIを使わずに自動化することが可能です。 下記の本を読めば、ChatGPT4でも料金掛からずに自動化できます!KindleUnlimited会員であれば無料で読めます。 今回のテーマ ...

続きを見る

自動化の関連記事はこちら

-自動化

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock