mirror of
https://github.com/Suwayomi/Tachidesk.git
synced 2025-12-23 13:02:34 +01:00
get default User Agent from WebView (#457)
* get default User Agent from WebView * make sure to close browser Co-authored-by: Mitchell Syer <Mitchellptbo@gmail.com> Co-authored-by: Mitchell Syer <Mitchellptbo@gmail.com>
This commit is contained in:
@@ -128,6 +128,21 @@ object CFClearance {
|
|||||||
.build()
|
.build()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getWebViewUserAgent(): String {
|
||||||
|
Playwright.create().use { playwright ->
|
||||||
|
playwright.chromium().launch(
|
||||||
|
LaunchOptions()
|
||||||
|
.setHeadless(true)
|
||||||
|
).use { browser ->
|
||||||
|
browser.newPage().use { page ->
|
||||||
|
val userAgent = page.evaluate("() => {return navigator.userAgent}") as String
|
||||||
|
logger.debug { "WebView User-Agent is $userAgent" }
|
||||||
|
return userAgent
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun getCookies(page: Page, url: String): List<Cookie> {
|
private fun getCookies(page: Page, url: String): List<Cookie> {
|
||||||
applyStealthInitScripts(page)
|
applyStealthInitScripts(page)
|
||||||
page.navigate(url)
|
page.navigate(url)
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.source.online
|
|||||||
import eu.kanade.tachiyomi.network.GET
|
import eu.kanade.tachiyomi.network.GET
|
||||||
import eu.kanade.tachiyomi.network.NetworkHelper
|
import eu.kanade.tachiyomi.network.NetworkHelper
|
||||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||||
|
import eu.kanade.tachiyomi.network.interceptor.CFClearance.getWebViewUserAgent
|
||||||
import eu.kanade.tachiyomi.network.newCallWithProgress
|
import eu.kanade.tachiyomi.network.newCallWithProgress
|
||||||
import eu.kanade.tachiyomi.source.CatalogueSource
|
import eu.kanade.tachiyomi.source.CatalogueSource
|
||||||
import eu.kanade.tachiyomi.source.model.FilterList
|
import eu.kanade.tachiyomi.source.model.FilterList
|
||||||
@@ -372,6 +373,6 @@ abstract class HttpSource : CatalogueSource {
|
|||||||
override fun getFilterList() = FilterList()
|
override fun getFilterList() = FilterList()
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
const val DEFAULT_USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.63"
|
val DEFAULT_USER_AGENT by lazy { getWebViewUserAgent() }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user