Class InteractiveBrowserEmulator
-
- All Implemented Interfaces:
-
ai.platon.pulsar.common.config.Parameterized,ai.platon.pulsar.common.event.EventEmitter,ai.platon.pulsar.skeleton.workflow.protocol.browser.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 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 FetchResult)>visit(FetchTask task, <Error class: unknown class> 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 Unit)>onWillNavigate(WebPage page, <Error class: unknown class> driver)Unit)>onNavigated(WebPage page, <Error class: unknown class> driver)Unit)>onWillInteract(WebPage page, <Error class: unknown class> driver)Unit)>onWillCheckDocumentState(WebPage page, <Error class: unknown class> driver)Unit)>onDocumentFullyLoaded(WebPage page, <Error class: unknown class> driver)Unit)>onWillScroll(WebPage page, <Error class: unknown class> driver)Unit)>onDidScroll(WebPage page, <Error class: unknown class> driver)Unit)>onDocumentSteady(WebPage page, <Error class: unknown class> driver)Unit)>onWillComputeFeature(WebPage page, <Error class: unknown class> driver)Unit)>onFeatureComputed(WebPage page, <Error class: unknown class> driver)Unit)>onDidInteract(WebPage page, <Error class: unknown class> driver)Unit)>onWillStopTab(WebPage page, <Error class: unknown class> driver)Unit)>onTabStopped(WebPage page, <Error class: unknown class> driver)Unitclose()Close the emulator. final UnitwaitForNetworkIdle(InteractTask interactTask, InteractResult result)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, getImmutableConfig, getResponseHandler, 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, <Error class: unknown class> 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, <Error class: unknown class> driver)
-
onNavigated
Unit )>onNavigated(WebPage page, <Error class: unknown class> driver)
-
onWillInteract
Unit )>onWillInteract(WebPage page, <Error class: unknown class> driver)
-
onWillCheckDocumentState
Unit )>onWillCheckDocumentState(WebPage page, <Error class: unknown class> driver)
-
onDocumentFullyLoaded
Unit )>onDocumentFullyLoaded(WebPage page, <Error class: unknown class> driver)
-
onWillScroll
Unit )>onWillScroll(WebPage page, <Error class: unknown class> driver)
-
onDidScroll
Unit )>onDidScroll(WebPage page, <Error class: unknown class> driver)
-
onDocumentSteady
Unit )>onDocumentSteady(WebPage page, <Error class: unknown class> driver)
-
onWillComputeFeature
Unit )>onWillComputeFeature(WebPage page, <Error class: unknown class> driver)
-
onFeatureComputed
Unit )>onFeatureComputed(WebPage page, <Error class: unknown class> driver)
-
onDidInteract
Unit )>onDidInteract(WebPage page, <Error class: unknown class> driver)
-
onWillStopTab
Unit )>onWillStopTab(WebPage page, <Error class: unknown class> driver)
-
onTabStopped
Unit )>onTabStopped(WebPage page, <Error class: unknown class> driver)
-
waitForNetworkIdle
final Unit waitForNetworkIdle(InteractTask interactTask, InteractResult result)
-
scrollOnPage
Unit scrollOnPage(InteractTask interactTask, InteractResult result)
Scroll on page to ensure all the content is loaded, including lazy content.
-
-
-
-