Skip to content

Commit f3f00ee

Browse files
committed
feat: setup chrome command, close #29
1 parent 2823f4b commit f3f00ee

2 files changed

Lines changed: 27 additions & 0 deletions

File tree

src/main/kotlin/xyz/cssxsh/mirai/selenium/MiraiSeleniumPlugin.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,14 @@ public object MiraiSeleniumPlugin : KotlinPlugin(
9494
@JvmOverloads
9595
public fun chromium(version: String = ""): File = setupChromium(folder = dataFolder, version = version)
9696

97+
/**
98+
* 下载解压 chrome
99+
* @param version 浏览器版本
100+
* @see setupChrome
101+
*/
102+
@JvmOverloads
103+
public fun chrome(version: String = ""): File = setupChrome(folder = dataFolder, version = version)
104+
97105
override fun PluginComponentStorage.onLoad() {
98106
SeleniumLogger.level = Level.OFF
99107
System.setProperty(CHROME_DRIVER_MIRRORS, "https://npm.taobao.org/mirrors/chromedriver")

src/main/kotlin/xyz/cssxsh/mirai/selenium/command/SeleniumCommand.kt

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,25 @@ public object SeleniumCommand : CompositeCommand(
123123
}
124124
}
125125

126+
/**
127+
* 安装 chrome
128+
* @param version 版本
129+
*/
130+
@SubCommand
131+
@Description("下载解压 chrome")
132+
public suspend fun CommandSender.chrome(version: String = "") {
133+
sendMessage("下载 chrome 开始, version: ${version.ifBlank { "latest" }}")
134+
try {
135+
val binary = MiraiSeleniumPlugin.chrome(version = version)
136+
sendMessage("下载结束,binary: ${binary.absolutePath}")
137+
} catch (cause: IOException) {
138+
logger.warning("下载 chrome 异常", cause)
139+
sendMessage("下载 chrome 异常")
140+
} finally {
141+
MiraiBrowserConfig.chrome = System.getProperty(CHROME_BROWSER_BINARY).orEmpty()
142+
}
143+
}
144+
126145
/**
127146
* 测试 图表绘制功能
128147
*/

0 commit comments

Comments
 (0)