Class InteractiveBrowserEmulator
-
- All Implemented Interfaces:
-
ai.platon.pulsar.common.config.Parameterized,ai.platon.pulsar.common.event.EventEmitter,ai.platon.pulsar.protocol.browser.emulator.BrowserEmulator,java.lang.AutoCloseable
public class InteractiveBrowserEmulator extends BrowserEmulatorImplBase implements BrowserEmulator
Created by vincent on 18-1-1. Copyright @ 2013-2023 Platon AI. All rights reserved.
-
-
Field Summary
Fields Modifier and Type Field Description private Function1<Throwable, Unit>eventExceptionHandlerprivate final WebDriverPoolManagerdriverPoolManagerprivate final BooleansupportAllCharsetsprivate final PatterncharsetPatternprivate final BooleanisActiveprivate final BrowserResponseHandlerresponseHandlerprivate final ImmutableConfigimmutableConfigprivate final Map<EmulateEvents, List<Function<Object>>>listeners
-
Constructor Summary
Constructors Constructor Description InteractiveBrowserEmulator(WebDriverPoolManager driverPoolManager, BrowserResponseHandler responseHandler, ImmutableConfig immutableConfig)
-
Method Summary
Modifier and Type Method Description Function1<Throwable, Unit>getEventExceptionHandler()UnitsetEventExceptionHandler(Function1<Throwable, Unit> eventExceptionHandler)final WebDriverPoolManagergetDriverPoolManager()The driver pool manager FetchResultvisit(FetchTask task, WebDriver driver)Fetch a page using a browser which can render the DOM and execute scripts. UnitcancelNow(FetchTask task)Cancel a task immediately Unitcancel(FetchTask task)Cancel a task UnitonWillNavigate(WebPage page, WebDriver driver)UnitonNavigated(WebPage page, WebDriver driver)UnitonWillInteract(WebPage page, WebDriver driver)UnitonWillCheckDocumentState(WebPage page, WebDriver driver)UnitonDocumentActuallyReady(WebPage page, WebDriver driver)UnitonWillScroll(WebPage page, WebDriver driver)UnitonDidScroll(WebPage page, WebDriver driver)UnitonDocumentSteady(WebPage page, WebDriver driver)UnitonWillComputeFeature(WebPage page, WebDriver driver)UnitonFeatureComputed(WebPage page, WebDriver driver)UnitonDidInteract(WebPage page, WebDriver driver)UnitonWillStopTab(WebPage page, WebDriver driver)UnitonTabStopped(WebPage page, WebDriver driver)Unitclose()Close the emulator. UnitscrollOnPage(InteractTask interactTask, InteractResult result)Scroll on page to ensure all the content is loaded, including lazy content. -
Methods inherited from class ai.platon.pulsar.protocol.browser.emulator.impl.BrowserEmulatorImplBase
createResponse, createResponseWithDatum, getCharsetPattern, getImmutableConfig, getResponseHandler, getSupportAllCharsets, isActive -
Methods inherited from class ai.platon.pulsar.common.event.AbstractEventEmitter
getListeners -
Methods inherited from class ai.platon.pulsar.common.event.EventEmitter
count, emit, emit, emit, emit, emit1, emit1, emit1, emit1, hasListeners, hasNormalListeners, hasSuspendListeners, listeners, listeners, normalListeners, normalListeners, off, off, off, off, off, off1, off1, off1, off1, off1, on, on, on, on, on1, on1, on1, on1, once, once, once, once1, once1, once1, suspendListeners, suspendListeners -
Methods inherited from class ai.platon.pulsar.common.config.Parameterized
getParams -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
InteractiveBrowserEmulator
InteractiveBrowserEmulator(WebDriverPoolManager driverPoolManager, BrowserResponseHandler responseHandler, ImmutableConfig immutableConfig)
-
-
Method Detail
-
getEventExceptionHandler
Function1<Throwable, Unit> getEventExceptionHandler()
-
setEventExceptionHandler
Unit setEventExceptionHandler(Function1<Throwable, Unit> eventExceptionHandler)
-
getDriverPoolManager
final WebDriverPoolManager getDriverPoolManager()
The driver pool manager
-
visit
FetchResult visit(FetchTask task, WebDriver driver)
Fetch a page using a browser which can render the DOM and execute scripts.
- Parameters:
task- The task to fetchdriver- The web driver- Returns:
The result of this fetch
-
cancelNow
Unit cancelNow(FetchTask task)
Cancel a task immediately
- Parameters:
task- The task to cancel
-
onWillNavigate
Unit onWillNavigate(WebPage page, WebDriver driver)
-
onNavigated
Unit onNavigated(WebPage page, WebDriver driver)
-
onWillInteract
Unit onWillInteract(WebPage page, WebDriver driver)
-
onWillCheckDocumentState
Unit onWillCheckDocumentState(WebPage page, WebDriver driver)
-
onDocumentActuallyReady
Unit onDocumentActuallyReady(WebPage page, WebDriver driver)
-
onWillScroll
Unit onWillScroll(WebPage page, WebDriver driver)
-
onDidScroll
Unit onDidScroll(WebPage page, WebDriver driver)
-
onDocumentSteady
Unit onDocumentSteady(WebPage page, WebDriver driver)
-
onWillComputeFeature
Unit onWillComputeFeature(WebPage page, WebDriver driver)
-
onFeatureComputed
Unit onFeatureComputed(WebPage page, WebDriver driver)
-
onDidInteract
Unit onDidInteract(WebPage page, WebDriver driver)
-
onWillStopTab
Unit onWillStopTab(WebPage page, WebDriver driver)
-
onTabStopped
Unit onTabStopped(WebPage page, WebDriver driver)
-
scrollOnPage
Unit scrollOnPage(InteractTask interactTask, InteractResult result)
Scroll on page to ensure all the content is loaded, including lazy content.
-
-
-
-