This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object that has an id. This id can be used to get additional information on the Node, resolve it into the JavaScript object wrapper, etc. It is important that client receives DOM events only for the nodes that are known to the client. Backend keeps track of the nodes that were sent to the client and never sends the same node twice. It is client's responsibility to collect information about the nodes that were sent to the client. Note that iframe owner elements will return corresponding document elements as their child nodes.
.. module:: cdp.dom
Generally, you do not need to instantiate CDP types yourself. Instead, the API creates objects for you as return values from commands, and then you can use those objects as arguments to other commands.
.. autoclass:: NodeId
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: BackendNodeId
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: StyleSheetId
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: BackendNode
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: PseudoType
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ShadowRootType
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: CompatibilityMode
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: PhysicalAxes
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: LogicalAxes
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ScrollOrientation
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: Node
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: DetachedElementInfo
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: RGBA
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: Quad
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: BoxModel
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ShapeOutsideInfo
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: Rect
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: CSSComputedStyleProperty
:members:
:undoc-members:
:exclude-members: from_json, to_json
Each command is a generator function. The return
type Generator[x, y, z] indicates that the generator
yields arguments of type x, it must be resumed with
an argument of type y, and it returns type z. In
this library, types x and y are the same for all
commands, and z is the return type you should pay attention
to. For more information, see
:ref:`Getting Started: Commands <getting-started-commands>`.
.. autofunction:: collect_class_names_from_subtree
.. autofunction:: copy_to
.. autofunction:: describe_node
.. autofunction:: disable
.. autofunction:: discard_search_results
.. autofunction:: enable
.. autofunction:: focus
.. autofunction:: force_show_popover
.. autofunction:: get_anchor_element
.. autofunction:: get_attributes
.. autofunction:: get_box_model
.. autofunction:: get_container_for_node
.. autofunction:: get_content_quads
.. autofunction:: get_detached_dom_nodes
.. autofunction:: get_document
.. autofunction:: get_element_by_relation
.. autofunction:: get_file_info
.. autofunction:: get_flattened_document
.. autofunction:: get_frame_owner
.. autofunction:: get_node_for_location
.. autofunction:: get_node_stack_traces
.. autofunction:: get_nodes_for_subtree_by_style
.. autofunction:: get_outer_html
.. autofunction:: get_querying_descendants_for_container
.. autofunction:: get_relayout_boundary
.. autofunction:: get_search_results
.. autofunction:: get_top_layer_elements
.. autofunction:: hide_highlight
.. autofunction:: highlight_node
.. autofunction:: highlight_rect
.. autofunction:: mark_undoable_state
.. autofunction:: move_to
.. autofunction:: perform_search
.. autofunction:: push_node_by_path_to_frontend
.. autofunction:: push_nodes_by_backend_ids_to_frontend
.. autofunction:: query_selector
.. autofunction:: query_selector_all
.. autofunction:: redo
.. autofunction:: remove_attribute
.. autofunction:: remove_node
.. autofunction:: request_child_nodes
.. autofunction:: request_node
.. autofunction:: resolve_node
.. autofunction:: scroll_into_view_if_needed
.. autofunction:: set_attribute_value
.. autofunction:: set_attributes_as_text
.. autofunction:: set_file_input_files
.. autofunction:: set_inspected_node
.. autofunction:: set_node_name
.. autofunction:: set_node_stack_traces_enabled
.. autofunction:: set_node_value
.. autofunction:: set_outer_html
.. autofunction:: undo
Generally, you do not need to instantiate CDP events yourself. Instead, the API creates events for you and then you use the event's attributes.
.. autoclass:: AttributeModified
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: AdoptedStyleSheetsModified
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: AttributeRemoved
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: CharacterDataModified
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ChildNodeCountUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ChildNodeInserted
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ChildNodeRemoved
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: DistributedNodesUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: DocumentUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: InlineStyleInvalidated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: PseudoElementAdded
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: TopLayerElementsUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ScrollableFlagUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: AdRelatedStateUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: AffectedByStartingStylesFlagUpdated
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: PseudoElementRemoved
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: SetChildNodes
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ShadowRootPopped
:members:
:undoc-members:
:exclude-members: from_json, to_json
.. autoclass:: ShadowRootPushed
:members:
:undoc-members:
:exclude-members: from_json, to_json