質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

ログイン

ログインは、ユーザーがコンピューターシステムにアクセスするプロセスの事を呼びます。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

Q&A

解決済

2回答

7109閲覧

【VBA】次回から自動ログインするようにする方法がわからない【ログインの保持】

m-nm0n

総合スコア15

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

ログイン

ログインは、ユーザーがコンピューターシステムにアクセスするプロセスの事を呼びます。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

0グッド

0クリップ

投稿2020/08/18 21:52

現在VBAでSeleniumを使って自動操作ツールを作成しています。

こちらのサイトの操作を自動化したいのですが、毎回ログインしなければなりません。

こちらの記事では

VBA

1' [今までの処理] 2chromeDriver = New ChromeDriver() 3chromeDriver.Start() 4chromeDriver.Get(url)

VBA

1' [修正後の処理] 2chromeDriver = New ChromeDriver() 3 4' PROFILE_PATHは定数として宣言済み 5chromeDriver.AddArgument("user-data-dir=" & PROFILE_PATH) ' ← 追加 6 7chromeDriver.Start() 8chromeDriver.Get(url)

に変えればできると書いてありますが、処理が微妙に違ってできません。

以下、私のコードです。

VBA

1 Dim driver As New Selenium.WebDriver 2 driver.Start "chrome" 3 driver.Get "https://www.furimawatch.net/tool/#!/login" 4

情報が少なく、調べてもわかりませんでした。
ご教授お願いします!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

DreamTheater

2020/08/18 23:25

こんにちは。 Seleniumは専門外なのですが、参考にされたサイトと同じようにChromeDriverクラスをdriverオブジェクトに割り当てることはできないのですか?
m-nm0n

2020/08/18 23:40

なるほど、試してみます!
stdio

2020/08/19 00:43 編集

要はログインが出来ればいい話だと思うので、別に自動ログインする必要はないと思います。 ExcelVBAなら、Excel内にログインに必要な情報を書いても出来ます。もしくは外部データにログイン情報を書きだしてしまっても良いと思います。
Reach

2020/08/19 01:02

PROFILE_PATH="C:\Users\%username%\AppData\Local\Google\Chrome\User Data" (Windowsの場合)は 記述されていますでしょうか?
Reach

2020/08/19 05:12

上記 エラーになるようです 回答欄を参照して下さい
guest

回答2

0

ベストアンサー

これでどうでしょうか?

VBA

1Sub test() 2 3 Dim driver As New Selenium.WebDriver 4 5 UserName = Application.UserName 6 PROFILE_PATH = "C:\Users\" + UserName + "\AppData\Local\Google\Chrome\User Data" 7 8 9 10 driver.AddArgument ("user-data-dir=" + PROFILE_PATH) 11 driver.Start "chrome" 12 13 14 driver.get "https://www.furimawatch.net/tool/#!/login" 15 driver.FindElementByCss("body > div.container > div > button:nth-child(1)").Click 16 17 18 '不要になる 19 'driver.SwitchToNextWindow 20 21 Stop 22 23 24End Sub

投稿2020/08/19 05:10

Reach

総合スコア735

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

chromeDriver.AddArgument("user-data-dir=" & PROFILE_PATH) ' ← 追加

の意味が理解できないのであれば、今のまま毎回ログイン処理を行うのが良いと思います。

理解しないまま使っていると、ある日突然自動ログインしなくなるという事態も考えられます。

投稿2020/08/19 04:59

otn

総合スコア85901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問