あなたはrsDriver
関数にextraCapabilities
引数を渡すことができます。
cprof <- getChromeProfile("/Users/<username>/Library/Application Support/Google/Chrome", "Default")
rD <- rsDriver(verbose = F, extraCapabilities = cprof)
remDr <- rD$client
UPDATE
ます。また、関連するCRXファイルをコードする塩基64で拡張子を追加することができます。あなたがbase64でエンコードする必要があるcrxファイルがあれば、例えばhttp://chrome-extension-downloader.com/からchromeのcrxファイルを得ることができます(adguard adblockerの現在のIDはbgnkhhnnamicmpeenaelnjfhikgbkllgです)。
library(RSelenium)
cprof <- list(chromeOptions =
list(extensions =
list(base64enc::base64encode("C:/Users/john/Downloads/Adguard-AdBlocker_v2.5.11.crx"))
))
rD <- rsDriver(verbose = F, extraCapabilities = cprof)
remDr <- rD$client
あなたはjsonlite
でエンコードする場合:MAC OSXシエラで
tmpfile <- "C:/Users/john/Downloads/Adguard-AdBlocker_v2.5.11.crx"
jsonlite::base64_enc(readBin(tmpfile, "raw", file.info(tmpfile)$size))
:私は、このためにhttps://cran.r-project.org/web/packages/base64enc/を使用し、私は "seltestprof" クロムに人を追加することで、プロファイルを作成し
。プロファイルはフォルダ内に作成されます。このフォルダは、プロファイルを使用しているときにchrome:// versionを参照すると見つかります。ここにリストされているプロファイルパスが表示されます。 ライブラリ(RSelenium)
cprof <- list(
chromeOptions =
list(extensions =
list(base64enc::base64encode("/Users/admin/Downloads/Adguard-AdBlocker_v2.5.11.crx"))
)
)
rD <- rsDriver(verbose = F, extraCapabilities = cprof)
remDr <- rD$client
:私は次のコードを使用するベース符号化されたCRXを使用する
library(RSelenium)
cprof <- getChromeProfile("/private/var/folders/c2/d97mz0250bg08rr4g2znxk7m0000gq/T/.org.chromium.Chromium.mS5SA1/", "Profile 1")
rD <- rsDriver(verbose = F, extraCapabilities = cprof)
remDr <- rD$client
remDr$navigate("http://ads-blocker.com/testing/")
remDr$screenshot(display = TRUE)
:鉱山
/private/var/folders/c2/d97mz0250bg08rr4g2znxk7m0000gq/T/.org.chromium.Chromium.mS5SA1/Profile 1
たIは、プロファイルを使用するために、次のコードを実行しました
お返事ありがとうございます。 'extraCapabilities'を' rsDriver'に渡しても、そのトリックをやっていないようです。 AdblockerはChromeを手動で実行しても動作しますが、RSeleniumを使用してリモートでドライブすると動作しません。なぜそれが事実だろうと知っていますか? –
@M.Aitkenこれは、カスタムプロファイルを使用する正しい方法です。カスタムプロファイルフォルダが正しく識別されていることを確認してください。また、クロムの2つのバージョンは同じプロファイルを使用できないことに注意してください。クロムが既に開いている場合、それは動作しません。私が追加した拡張機能を追加するもう一つの方法があります。 – jdharrison
プロファイルフォルダが正しく識別されていることを確認しました。私はまた、Rでそれを開く前にクロムを閉じていることを確認しました。代替ソリューションのおかげさまですが、私はまだあなたが示唆したように(base64encまたはjsonliteのいずれかで)crxファイルをエンコードすることによって動作するようにはなっていません。これはMacとPCの違いですか? –