High-Performance Open-Source Archive
One way to extract text from a page is to tell the browser to run JavaScript code that does it.
library(chromote)
b <- ChromoteSession$new()
p <- b$Page$loadEventFired(wait_ = FALSE)
b$go_to("https://www.whatismybrowser.com/", wait_ = FALSE)
p$then(function(value) {
b$Runtime$evaluate(
'document.querySelector(".corset .string-major a").innerText'
)
})$
then(function(value) {
print(value$result$value)
})Another way is to use CDP commands to extract content from the DOM. This does not require executing JavaScript in the browser’s context, but it is also not as flexible as JavaScript.
library(chromote)
b <- ChromoteSession$new()
b$go_to("https://www.whatismybrowser.com/")
x <- b$DOM$getDocument()
x <- b$DOM$querySelector(x$root$nodeId, ".corset .string-major a")
b$DOM$getOuterHTML(x$nodeId)
#> $outerHTML
#> [1] "<a href=\"/detect/what-version-of-chrome-do-i-have\">Chrome 75 on macOS (Mojave)</a>"library(chromote)
b <- ChromoteSession$new()
b$go_to("https://www.whatismybrowser.com/", wait_ = FALSE)$
then(function(value) {
b$DOM$getDocument()
})$
then(function(value) {
b$DOM$querySelector(value$root$nodeId, ".corset .string-major a")
})$
then(function(value) {
b$DOM$getOuterHTML(value$nodeId)
})$
then(function(value) {
print(value)
})
Need mirroring services?
Contact our team at info@vpspulse.com.
Mirror powered by VPSpulse
Infrastructure sponsored by VPSPulse & Secure Payments by ArionPay.