PK APOCALYPSE V1

APOCALYPSE V1

Current Path : /opt/hc_python/lib/python3.12/site-packages/lxml/__pycache__/
Upload File :
Current File : //opt/hc_python/lib/python3.12/site-packages/lxml/__pycache__/cssselect.cpython-312.pyc

�

���g���R�dZddlmZ	ddlZejZejZejZgd�Z	Gd�dej�ZGd	�d
eej�Z
d�Zejd�Zd
e_eed<Gd�dej$�Zy#e$r	ed��wxYw)z�CSS Selectors based on XPath.

This module supports selecting XML/HTML tags based on CSS selectors.
See the `CSSSelector` class for details.

This is a thin wrapper around cssselect 0.7 or later.
�)�etree�NzPcssselect does not seem to be installed. See https://pypi.org/project/cssselect/)�SelectorSyntaxError�ExpressionError�
SelectorError�CSSSelectorc��eZdZdZd�Zy)�LxmlTranslatorzR
    A custom CSS selector to XPath translator with lxml-specific extensions.
    c���|j�dgdgfvrtd|jz��|jdj}|j	d|j|j
��z�S)N�STRING�IDENTz9Expected a single string or ident for :contains(), got %rrz7contains(__lxml_internal_css:lower-case(string(.)), %s))�argument_typesr�	arguments�value�
add_condition�
xpath_literal�lower)�self�xpath�functionrs    �?/opt/hc_python/lib64/python3.12/site-packages/lxml/cssselect.py�xpath_contains_functionz&LxmlTranslator.xpath_contains_function s����"�"�$�h�Z�'��,C�C�!�K��$�$�%�&�
&��"�"�1�%�+�+���"�"�E�� � �����/�
0�1�	1�N)�__name__�
__module__�__qualname__�__doc__r�rrr
r
s���
1rr
c��eZdZdZy)�LxmlHTMLTranslatorz)
    lxml extensions + HTML support.
    N)rrrrrrrr r -s��rr c�"�|j�S)N)r)�context�ss  r�_make_lower_caser$3s���7�7�9�rzhttp://codespeak.net/lxml/css/�__lxml_internal_cssz
lower-casec�*��eZdZdZd�fd�	Zd�Z�xZS)ra�A CSS selector.

    Usage::

        >>> from lxml import etree, cssselect
        >>> select = cssselect.CSSSelector("a tag > child")

        >>> root = etree.XML("<a><b><c/><tag><child>TEXT</child></tag></b></a>")
        >>> [ el.tag for el in select(root) ]
        ['child']

    To use CSS namespaces, you need to pass a prefix-to-namespace
    mapping as ``namespaces`` keyword argument::

        >>> rdfns = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'
        >>> select_ns = cssselect.CSSSelector('root > rdf|Description',
        ...                                   namespaces={'rdf': rdfns})

        >>> rdf = etree.XML((
        ...     '<root xmlns:rdf="%s">'
        ...       '<rdf:Description>blah</rdf:Description>'
        ...     '</root>') % rdfns)
        >>> [(el.tag, el.text) for el in select_ns(rdf)]
        [('{http://www.w3.org/1999/02/22-rdf-syntax-ns#}Description', 'blah')]

    c���|dk(rt�}n!|dk(rt�}n|dk(rtd��}|j|�}t�|�||��||_y)N�xml�html�xhtmlT)r*)�
namespaces)r
r �css_to_xpath�super�__init__�css)rr/r+�
translator�path�	__class__s     �rr.zCSSSelector.__init__Vs^������'�)�J�
�6�
!�+�-�J�
�7�
"�+�$�7�J��&�&�s�+��
����*��5���rc�r�d|jjtt|��|jfzS)Nz<%s %x for %r>)r2r�abs�idr/)rs r�__repr__zCSSSelector.__repr__as3����N�N�#�#���4��M��H�H�#��	r)Nr()rrrrr.r6�
__classcell__)r2s@rrr;s����4	�rr)r�r�	cssselect�external_cssselect�ImportErrorrrr�__all__�GenericTranslatorr
�HTMLTranslatorr r$�FunctionNamespace�ns�prefix�XPathrrrr�<module>rCs�����3�*�)�<�<��$�4�4��"�0�0�
���1�'�9�9�1�"��);�)J�)J����U���=�>��!��	�#��<��*�%�+�+�*��]�3�
�	2�3�3�3�s�B�B&

if you don't want to be vaporized in a nuclear explosion, i simply have to become nuclear myself… i am atomic