telemetry.internal.browser.web_contents
index
telemetry/internal/browser/web_contents.py

# Copyright 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

 
Modules
       
telemetry.core.exceptions
os
telemetry.core.util

 
Classes
       
__builtin__.object
WebContents

 
class WebContents(__builtin__.object)
    Represents web contents in the browser
 
  Methods defined here:
CloseConnections(self)
Closes all TCP sockets held open by the browser.
 
Raises:
  exceptions.DevtoolsTargetCrashException if the tab is not alive.
EnableAllContexts(self)
Enable all contexts in a page. Returns the number of available contexts.
 
Raises:
  exceptions.WebSocketDisconnected
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
EvaluateJavaScript(self, expr, timeout=90)
Evalutes expr in JavaScript and returns the JSONized result.
 
Consider using ExecuteJavaScript for cases where the result of the
expression is not needed.
 
If evaluation throws in JavaScript, a Python EvaluateException will
be raised.
 
If the result of the evaluation cannot be JSONized, then an
EvaluationException will be raised.
 
Raises:
  exceptions.Error: See EvaluateJavaScriptInContext() for a detailed list
  of possible exceptions.
EvaluateJavaScriptInContext(self, expr, context_id, timeout=90)
Similar to ExecuteJavaScript, except context_id can refer to an iframe.
The main page has context_id=1, the first iframe context_id=2, etc.
 
Raises:
  exceptions.EvaluateException
  exceptions.WebSocketDisconnected
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
ExecuteJavaScript(self, statement, timeout=90)
Executes statement in JavaScript. Does not return the result.
 
If the statement failed to evaluate, EvaluateException will be raised.
 
Raises:
  exceptions.Error: See ExecuteJavaScriptInContext() for a detailed list of
  possible exceptions.
ExecuteJavaScriptInContext(self, expr, context_id, timeout=90)
Similar to ExecuteJavaScript, except context_id can refer to an iframe.
The main page has context_id=1, the first iframe context_id=2, etc.
 
Raises:
  exceptions.EvaluateException
  exceptions.WebSocketDisconnected
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
GetUrl(self)
Returns the URL to which the WebContents is connected.
 
Raises:
  exceptions.Error: If there is an error in inspector backend connection.
GetWebviewContexts(self)
Returns a list of webview contexts within the current inspector backend.
 
Returns:
  A list of WebContents objects representing the webview contexts.
 
Raises:
  exceptions.Error: If there is an error in inspector backend connection.
HasReachedQuiescence(self)
Determine whether the page has reached quiescence after loading.
 
Returns:
  True if 2 seconds have passed since last resource received, false
  otherwise.
Raises:
  exceptions.Error: See EvaluateJavaScript() for a detailed list of
  possible exceptions.
IsAlive(self)
Whether the WebContents is still operating normally.
 
Since WebContents function asynchronously, this method does not guarantee
that the WebContents will still be alive at any point in the future.
 
Returns:
  A boolean indicating whether the WebContents is opearting normally.
Navigate(self, url, script_to_evaluate_on_commit=None, timeout=90)
Navigates to url.
 
If |script_to_evaluate_on_commit| is given, the script source string will be
evaluated when the navigation is committed. This is after the context of
the page exists, but before any script on the page itself has executed.
 
Raises:
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
StartTimelineRecording(self)
Starts timeline recording.
 
Raises:
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
StopTimelineRecording(self)
Stops timeline recording.
 
Raises:
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
SynthesizeScrollGesture(self, x=100, y=800, xDistance=0, yDistance=-500, xOverscroll=None, yOverscroll=None, preventFling=True, speed=None, gestureSourceType=None, repeatCount=None, repeatDelayMs=None, interactionMarkerName=None)
Runs an inspector command that causes a repeatable browser driven scroll.
 
Args:
  x: X coordinate of the start of the gesture in CSS pixels.
  y: Y coordinate of the start of the gesture in CSS pixels.
  xDistance: Distance to scroll along the X axis (positive to scroll left).
  yDistance: Ddistance to scroll along the Y axis (positive to scroll up).
  xOverscroll: Number of additional pixels to scroll back along the X axis.
  xOverscroll: Number of additional pixels to scroll back along the Y axis.
  preventFling: Prevents a fling gesture.
  speed: Swipe speed in pixels per second.
  gestureSourceType: Which type of input events to be generated.
  repeatCount: Number of additional repeats beyond the first scroll.
  repeatDelayMs: Number of milliseconds delay between each repeat.
  interactionMarkerName: The name of the interaction markers to generate.
 
Raises:
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
WaitForDocumentReadyStateToBeComplete(self, timeout=90)
Waits for the document to finish loading.
 
Raises:
  exceptions.Error: See WaitForJavaScriptExpression() for a detailed list
  of possible exceptions.
WaitForDocumentReadyStateToBeInteractiveOrBetter(self, timeout=90)
Waits for the document to be interactive.
 
Raises:
  exceptions.Error: See WaitForJavaScriptExpression() for a detailed list
  of possible exceptions.
WaitForJavaScriptExpression(self, expr, timeout, dump_page_state_on_timeout=True)
Waits for the given JavaScript expression to be True.
 
This method is robust against any given Evaluation timing out.
 
Args:
  expr: The expression to evaluate.
  timeout: The number of seconds to wait for the expression to be True.
  dump_page_state_on_timeout: Whether to provide additional information on
      the page state if a TimeoutException is thrown.
 
Raises:
  exceptions.TimeoutException: On a timeout.
  exceptions.Error: See EvaluateJavaScript() for a detailed list of
  possible exceptions.
WaitForNavigate(self, timeout=90)
Waits for the navigation to complete.
 
The current page is expect to be in a navigation.
This function returns when the navigation is complete or when
the timeout has been exceeded.
 
Raises:
  exceptions.TimeoutException
  exceptions.DevtoolsTargetCrashException
__init__(self, inspector_backend)

Data descriptors defined here:
__dict__
dictionary for instance variables (if defined)
__weakref__
list of weak references to the object (if defined)
id
Return the unique id string for this tab object.
message_output_stream
timeline_model

 
Data
        DEFAULT_WEB_CONTENTS_TIMEOUT = 90