selectolax


Nameselectolax JSON
Version 0.3.32 PyPI version JSON
download
home_pagehttps://github.com/rushter/selectolax
SummaryFast HTML5 parser with CSS selectors.
upload_time2025-07-19 20:15:13
maintainerNone
docs_urlNone
authorArtem Golubin
requires_python>=3.9
licenseMIT
keywords selectolax html parser css fast
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: docs/logo.png
  :alt: selectolax logo

-------------------------

.. image:: https://img.shields.io/pypi/v/selectolax.svg
        :target: https://pypi.python.org/pypi/selectolax

A fast HTML5 parser with CSS selectors using `Modest <https://github.com/lexborisov/Modest/>`_ and
`Lexbor <https://github.com/lexbor/lexbor>`_ engines.


Installation
------------
From PyPI using pip:

.. code-block:: bash

        pip install selectolax

If installation fails due to compilation errors, you may need to install `Cython <https://github.com/cython/cython>`_:

.. code-block:: bash

        pip install selectolax[cython]

This usually happens when you try to install an outdated version of selectolax on a newer version of Python.


Development version from GitHub:

.. code-block:: bash

        git clone --recursive  https://github.com/rushter/selectolax
        cd selectolax
        pip install -r requirements_dev.txt
        python setup.py install

How to compile selectolax while developing:

.. code-block:: bash

    make clean
    make dev

Basic examples
--------------

Here are some basic examples to get you started with selectolax:

Parsing HTML and extracting text:

.. code:: python

    In [1]: from selectolax.parser import HTMLParser
       ...:
       ...: html = """
       ...: <h1 id="title" data-updated="20201101">Hi there</h1>
       ...: <div class="post">Lorem Ipsum is simply dummy text of the printing and typesetting industry. </div>
       ...: <div class="post">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div>
       ...: """
       ...: tree = HTMLParser(html)

    In [2]: tree.css_first('h1#title').text()
    Out[2]: 'Hi there'

    In [3]: tree.css_first('h1#title').attributes
    Out[3]: {'id': 'title', 'data-updated': '20201101'}

    In [4]: [node.text() for node in tree.css('.post')]
    Out[4]:
    ['Lorem Ipsum is simply dummy text of the printing and typesetting industry. ',
     'Lorem ipsum dolor sit amet, consectetur adipiscing elit.']

Using advanced CSS selectors:

.. code:: python

    In [1]: html = "<div><p id=p1><p id=p2><p id=p3><a>link</a><p id=p4><p id=p5>text<p id=p6></div>"
       ...: selector = "div > :nth-child(2n+1):not(:has(a))"

    In [2]: for node in HTMLParser(html).css(selector):
       ...:     print(node.attributes, node.text(), node.tag)
       ...:     print(node.parent.tag)
       ...:     print(node.html)
       ...:
    {'id': 'p1'}  p
    div
    <p id="p1"></p>
    {'id': 'p5'} text p
    div
    <p id="p5">text</p>


* `Detailed overview <https://github.com/rushter/selectolax/blob/master/examples/walkthrough.ipynb>`_

Available backends
------------------

Selectolax supports two backends: ``Modest`` and ``Lexbor``. By default, all examples use the Modest backend.
Most of the features between backends are almost identical, but there are still some differences.

As of 2024, the preferred backend is ``Lexbor``. The ``Modest`` backend is still available for compatibility reasons
and the underlying C library that selectolax uses is not maintained anymore.


To use ``lexbor``, just import the parser and use it in the similar way to the `HTMLParser`.

.. code:: python

    In [1]: from selectolax.lexbor import LexborHTMLParser

    In [2]: html = """
       ...: <title>Hi there</title>
       ...: <div id="updated">2021-08-15</div>
       ...: """

    In [3]: parser = LexborHTMLParser(html)
    In [4]: parser.root.css_first("#updated").text()
    Out[4]: '2021-08-15'


Simple Benchmark
----------------

* Extract title, links, scripts and a meta tag from main pages of top 754 domains. See ``examples/benchmark.py`` for more information.

============================ ===========
Package                       Time
============================ ===========
Beautiful Soup (html.parser)  61.02 sec.
lxml / Beautiful Soup (lxml)  9.09 sec.
html5_parser                  16.10 sec.
selectolax (Modest)           2.94 sec.
selectolax (Lexbor)           2.39 sec.
============================ ===========

Links
-----

*  `selectolax API reference <https://selectolax.readthedocs.io/en/latest/index.html>`_
*  `Video introduction to web scraping using selectolax <https://youtu.be/HpRsfpPuUzE>`_
*  `How to Scrape 7k Products with Python using selectolax and httpx <https://www.youtube.com/watch?v=XpGvq755J2U>`_
*  `Detailed overview <https://github.com/rushter/selectolax/blob/master/examples/walkthrough.ipynb>`_
*  `Modest introduction <https://lexborisov.github.io/Modest/>`_
*  `Modest benchmark <https://lexborisov.github.io/benchmark-html-parsers/>`_
*  `Python benchmark <https://rushter.com/blog/python-fast-html-parser/>`_
*  `Another Python benchmark <https://www.peterbe.com/plog/selectolax-or-pyquery>`_

License
-------

* Modest engine — `LGPL2.1 <https://github.com/lexborisov/Modest/blob/master/LICENSE>`_
* selectolax - `MIT <https://github.com/rushter/selectolax/blob/master/LICENSE>`_

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/rushter/selectolax",
    "name": "selectolax",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "selectolax, html, parser, css, fast",
    "author": "Artem Golubin",
    "author_email": "Artem Golubin <me@rushter.com>",
    "download_url": "https://files.pythonhosted.org/packages/17/22/da3d959b5870ebcfc753db52580343efaa408f0980e4094bd852c193b068/selectolax-0.3.32.tar.gz",
    "platform": null,
    "description": ".. image:: docs/logo.png\n  :alt: selectolax logo\n\n-------------------------\n\n.. image:: https://img.shields.io/pypi/v/selectolax.svg\n        :target: https://pypi.python.org/pypi/selectolax\n\nA fast HTML5 parser with CSS selectors using `Modest <https://github.com/lexborisov/Modest/>`_ and\n`Lexbor <https://github.com/lexbor/lexbor>`_ engines.\n\n\nInstallation\n------------\nFrom PyPI using pip:\n\n.. code-block:: bash\n\n        pip install selectolax\n\nIf installation fails due to compilation errors, you may need to install `Cython <https://github.com/cython/cython>`_:\n\n.. code-block:: bash\n\n        pip install selectolax[cython]\n\nThis usually happens when you try to install an outdated version of selectolax on a newer version of Python.\n\n\nDevelopment version from GitHub:\n\n.. code-block:: bash\n\n        git clone --recursive  https://github.com/rushter/selectolax\n        cd selectolax\n        pip install -r requirements_dev.txt\n        python setup.py install\n\nHow to compile selectolax while developing:\n\n.. code-block:: bash\n\n    make clean\n    make dev\n\nBasic examples\n--------------\n\nHere are some basic examples to get you started with selectolax:\n\nParsing HTML and extracting text:\n\n.. code:: python\n\n    In [1]: from selectolax.parser import HTMLParser\n       ...:\n       ...: html = \"\"\"\n       ...: <h1 id=\"title\" data-updated=\"20201101\">Hi there</h1>\n       ...: <div class=\"post\">Lorem Ipsum is simply dummy text of the printing and typesetting industry. </div>\n       ...: <div class=\"post\">Lorem ipsum dolor sit amet, consectetur adipiscing elit.</div>\n       ...: \"\"\"\n       ...: tree = HTMLParser(html)\n\n    In [2]: tree.css_first('h1#title').text()\n    Out[2]: 'Hi there'\n\n    In [3]: tree.css_first('h1#title').attributes\n    Out[3]: {'id': 'title', 'data-updated': '20201101'}\n\n    In [4]: [node.text() for node in tree.css('.post')]\n    Out[4]:\n    ['Lorem Ipsum is simply dummy text of the printing and typesetting industry. ',\n     'Lorem ipsum dolor sit amet, consectetur adipiscing elit.']\n\nUsing advanced CSS selectors:\n\n.. code:: python\n\n    In [1]: html = \"<div><p id=p1><p id=p2><p id=p3><a>link</a><p id=p4><p id=p5>text<p id=p6></div>\"\n       ...: selector = \"div > :nth-child(2n+1):not(:has(a))\"\n\n    In [2]: for node in HTMLParser(html).css(selector):\n       ...:     print(node.attributes, node.text(), node.tag)\n       ...:     print(node.parent.tag)\n       ...:     print(node.html)\n       ...:\n    {'id': 'p1'}  p\n    div\n    <p id=\"p1\"></p>\n    {'id': 'p5'} text p\n    div\n    <p id=\"p5\">text</p>\n\n\n* `Detailed overview <https://github.com/rushter/selectolax/blob/master/examples/walkthrough.ipynb>`_\n\nAvailable backends\n------------------\n\nSelectolax supports two backends: ``Modest`` and ``Lexbor``. By default, all examples use the Modest backend.\nMost of the features between backends are almost identical, but there are still some differences.\n\nAs of 2024, the preferred backend is ``Lexbor``. The ``Modest`` backend is still available for compatibility reasons\nand the underlying C library that selectolax uses is not maintained anymore.\n\n\nTo use ``lexbor``, just import the parser and use it in the similar way to the `HTMLParser`.\n\n.. code:: python\n\n    In [1]: from selectolax.lexbor import LexborHTMLParser\n\n    In [2]: html = \"\"\"\n       ...: <title>Hi there</title>\n       ...: <div id=\"updated\">2021-08-15</div>\n       ...: \"\"\"\n\n    In [3]: parser = LexborHTMLParser(html)\n    In [4]: parser.root.css_first(\"#updated\").text()\n    Out[4]: '2021-08-15'\n\n\nSimple Benchmark\n----------------\n\n* Extract title, links, scripts and a meta tag from main pages of top 754 domains. See ``examples/benchmark.py`` for more information.\n\n============================ ===========\nPackage                       Time\n============================ ===========\nBeautiful Soup (html.parser)  61.02 sec.\nlxml / Beautiful Soup (lxml)  9.09 sec.\nhtml5_parser                  16.10 sec.\nselectolax (Modest)           2.94 sec.\nselectolax (Lexbor)           2.39 sec.\n============================ ===========\n\nLinks\n-----\n\n*  `selectolax API reference <https://selectolax.readthedocs.io/en/latest/index.html>`_\n*  `Video introduction to web scraping using selectolax <https://youtu.be/HpRsfpPuUzE>`_\n*  `How to Scrape 7k Products with Python using selectolax and httpx <https://www.youtube.com/watch?v=XpGvq755J2U>`_\n*  `Detailed overview <https://github.com/rushter/selectolax/blob/master/examples/walkthrough.ipynb>`_\n*  `Modest introduction <https://lexborisov.github.io/Modest/>`_\n*  `Modest benchmark <https://lexborisov.github.io/benchmark-html-parsers/>`_\n*  `Python benchmark <https://rushter.com/blog/python-fast-html-parser/>`_\n*  `Another Python benchmark <https://www.peterbe.com/plog/selectolax-or-pyquery>`_\n\nLicense\n-------\n\n* Modest engine \u2014 `LGPL2.1 <https://github.com/lexborisov/Modest/blob/master/LICENSE>`_\n* selectolax - `MIT <https://github.com/rushter/selectolax/blob/master/LICENSE>`_\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Fast HTML5 parser with CSS selectors.",
    "version": "0.3.32",
    "project_urls": {
        "Changelog": "https://github.com/rushter/selectolax/blob/main/CHANGES.rst",
        "Documentation": "https://selectolax.readthedocs.io/en/latest/parser.html",
        "Homepage": "https://github.com/rushter/selectolax",
        "Repository": "https://github.com/rushter/selectolax"
    },
    "split_keywords": [
        "selectolax",
        " html",
        " parser",
        " css",
        " fast"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5a36d1c7da30c3967bca0aab69bb8125f62e88c10b260b7efbc22ca84e29de83",
                "md5": "8f32dce004d1ddbf12ea625509960581",
                "sha256": "167046c131423674a8ac92b8f66716bcf905f06be1e7779f30edd5d6769eeb36"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8f32dce004d1ddbf12ea625509960581",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 2071135,
            "upload_time": "2025-07-19T20:14:22",
            "upload_time_iso_8601": "2025-07-19T20:14:22.316232Z",
            "url": "https://files.pythonhosted.org/packages/5a/36/d1c7da30c3967bca0aab69bb8125f62e88c10b260b7efbc22ca84e29de83/selectolax-0.3.32-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d925557f0bc2254b644f29870841a0a887cbf14e29c9d91d1f6b022d62d94674",
                "md5": "82c0aa2d43bb18ceddbc78a6c678b2e4",
                "sha256": "1d5221c81cc12620a4037b315ca61d85b14578567c73ed8b4b447d44fb409388"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "82c0aa2d43bb18ceddbc78a6c678b2e4",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 2066919,
            "upload_time": "2025-07-19T20:14:24",
            "upload_time_iso_8601": "2025-07-19T20:14:24.712977Z",
            "url": "https://files.pythonhosted.org/packages/d9/25/557f0bc2254b644f29870841a0a887cbf14e29c9d91d1f6b022d62d94674/selectolax-0.3.32-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1a70da6fda3607a590f5255f211662d1d35deb68fde800acb944c6e062a29074",
                "md5": "6374bb014d0b70b642a2f24ea81bda29",
                "sha256": "d36c24f5558458fa84c33dc52d874e1e69815953c53dac86714bbd7a84057f32"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6374bb014d0b70b642a2f24ea81bda29",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 5563497,
            "upload_time": "2025-07-19T20:14:26",
            "upload_time_iso_8601": "2025-07-19T20:14:26.618803Z",
            "url": "https://files.pythonhosted.org/packages/1a/70/da6fda3607a590f5255f211662d1d35deb68fde800acb944c6e062a29074/selectolax-0.3.32-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1644a9cf0aa3cbed514ccd14739cad888853a72d6e95b310e61434033ccc954b",
                "md5": "d81d9672ebf30c2ddfdef3fdad9a3ed4",
                "sha256": "7782da4273eed617cf5bfe0ada2bd1b8513dceb0a7115915af091c47a56f0432"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d81d9672ebf30c2ddfdef3fdad9a3ed4",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 5569655,
            "upload_time": "2025-07-19T20:14:28",
            "upload_time_iso_8601": "2025-07-19T20:14:28.143911Z",
            "url": "https://files.pythonhosted.org/packages/16/44/a9cf0aa3cbed514ccd14739cad888853a72d6e95b310e61434033ccc954b/selectolax-0.3.32-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ca334a958319c797a36a4fdee472754acc8696ae8a43e7dd4d2bb6606c9b97e1",
                "md5": "0b5752f935f4987c8d6c360cfbd3f911",
                "sha256": "83e631c07f194be2972de8b4d54565f073bb32b94adb4f3ab1f332453242565e"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "0b5752f935f4987c8d6c360cfbd3f911",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 1796148,
            "upload_time": "2025-07-19T20:14:30",
            "upload_time_iso_8601": "2025-07-19T20:14:30.032093Z",
            "url": "https://files.pythonhosted.org/packages/ca/33/4a958319c797a36a4fdee472754acc8696ae8a43e7dd4d2bb6606c9b97e1/selectolax-0.3.32-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "22d19f7f38114525b292ab00147e39db539bf4fae3b3056edc046117a637b1fc",
                "md5": "cbe69d60fdb831bfc73b0a302ac90280",
                "sha256": "ba71c4d988c6664552f15661f2bdfac6fff06883223fa5cbe327c5328c24516a"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp310-cp310-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "cbe69d60fdb831bfc73b0a302ac90280",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 1740904,
            "upload_time": "2025-07-19T20:14:31",
            "upload_time_iso_8601": "2025-07-19T20:14:31.449576Z",
            "url": "https://files.pythonhosted.org/packages/22/d1/9f7f38114525b292ab00147e39db539bf4fae3b3056edc046117a637b1fc/selectolax-0.3.32-cp310-cp310-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "288d32e2150be7d3c0cfff33bb1f6eeae166805e20a9e1130b2bcf62834bcc6e",
                "md5": "53db1d9f2b1a3ad7c515f246aef83c55",
                "sha256": "014aaf0b7b192fcb6d5fc38e7610bac83aaffa85d86a7978cc02e9ad1a32588b"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp311-cp311-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "53db1d9f2b1a3ad7c515f246aef83c55",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 2077646,
            "upload_time": "2025-07-19T20:14:32",
            "upload_time_iso_8601": "2025-07-19T20:14:32.940537Z",
            "url": "https://files.pythonhosted.org/packages/28/8d/32e2150be7d3c0cfff33bb1f6eeae166805e20a9e1130b2bcf62834bcc6e/selectolax-0.3.32-cp311-cp311-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "714db7b721e0c275a87e15a4da8097f6393ae6880cc5abc36ecfeba14525ad64",
                "md5": "416d17e746fcc0320ff2a0cba4950c47",
                "sha256": "8ad222843911ae651fdccc8b402bb17d0709b2b53538ea1c71bc39f5c6f625e1"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "416d17e746fcc0320ff2a0cba4950c47",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 2073218,
            "upload_time": "2025-07-19T20:14:34",
            "upload_time_iso_8601": "2025-07-19T20:14:34.942086Z",
            "url": "https://files.pythonhosted.org/packages/71/4d/b7b721e0c275a87e15a4da8097f6393ae6880cc5abc36ecfeba14525ad64/selectolax-0.3.32-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1da512f097554b925f9ecdb0697975b198914e0d6b941c0bad73c5bfdcda2be2",
                "md5": "f8140d8db7b8b3dfce6ab2cdbb594831",
                "sha256": "c7b770f56d5c5a5ea62ce9820cf85419d4ec9bfd0619a4b08dd1c2f2d3a343d0"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "f8140d8db7b8b3dfce6ab2cdbb594831",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 5684242,
            "upload_time": "2025-07-19T20:14:36",
            "upload_time_iso_8601": "2025-07-19T20:14:36.860813Z",
            "url": "https://files.pythonhosted.org/packages/1d/a5/12f097554b925f9ecdb0697975b198914e0d6b941c0bad73c5bfdcda2be2/selectolax-0.3.32-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d62063f1c299153faae7c061577691b81f683bf45bdf437449a009c0711efde9",
                "md5": "1803e65367a54e0f8453594b61119744",
                "sha256": "78d79ce48127c7d4bca6b637849b042b49990cdebe9d3e69c47ab505287963a8"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1803e65367a54e0f8453594b61119744",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 5697059,
            "upload_time": "2025-07-19T20:14:38",
            "upload_time_iso_8601": "2025-07-19T20:14:38.257142Z",
            "url": "https://files.pythonhosted.org/packages/d6/20/63f1c299153faae7c061577691b81f683bf45bdf437449a009c0711efde9/selectolax-0.3.32-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ddb45185d1e12ee02a8f2490596f2c32aeefea328a9f94ca74ce1f88480aa368",
                "md5": "dc39e60662a7da6fd11b49a4bb1cf10a",
                "sha256": "8ca7a43518a7b9b11801ec5ed8b35e96d8f03d8bc6fb9544f60384c0cf200c68"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "dc39e60662a7da6fd11b49a4bb1cf10a",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 1797893,
            "upload_time": "2025-07-19T20:14:40",
            "upload_time_iso_8601": "2025-07-19T20:14:40.181608Z",
            "url": "https://files.pythonhosted.org/packages/dd/b4/5185d1e12ee02a8f2490596f2c32aeefea328a9f94ca74ce1f88480aa368/selectolax-0.3.32-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ed20765b4a14e9a25c0f2f3542ec681ffffae07a056fd41bf9e184294a3c81f1",
                "md5": "49d403d0f4c577e8f3ecf1d9f98130b5",
                "sha256": "64c8367c5bec2265619e440d84db6588603c2b46900ec7856fe72705861fbcdf"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp311-cp311-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "49d403d0f4c577e8f3ecf1d9f98130b5",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 1741018,
            "upload_time": "2025-07-19T20:14:41",
            "upload_time_iso_8601": "2025-07-19T20:14:41.573069Z",
            "url": "https://files.pythonhosted.org/packages/ed/20/765b4a14e9a25c0f2f3542ec681ffffae07a056fd41bf9e184294a3c81f1/selectolax-0.3.32-cp311-cp311-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f355c7f286ac13633e594f9dcb41b8ff9f55dc1fd7a3d9e8c9e64d2f6a545b69",
                "md5": "9d9edcb58c454a11df36c8bdc890cccc",
                "sha256": "5426a79db5c942daf6b3db4354d6cc77cc1846a2745837c6730cd0835e543811"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp312-cp312-macosx_10_13_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9d9edcb58c454a11df36c8bdc890cccc",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 2078649,
            "upload_time": "2025-07-19T20:14:42",
            "upload_time_iso_8601": "2025-07-19T20:14:42.968680Z",
            "url": "https://files.pythonhosted.org/packages/f3/55/c7f286ac13633e594f9dcb41b8ff9f55dc1fd7a3d9e8c9e64d2f6a545b69/selectolax-0.3.32-cp312-cp312-macosx_10_13_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8ca6390eb436b4b0cd2427cfbbc608f49e533a09db543e24b272dfa802890066",
                "md5": "a29feeda75a8968851953d5e8dd2169f",
                "sha256": "9d06a9081e9d4e1b4b2c5c22d2443d72e371814f79ee672081821bb8b128286f"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "a29feeda75a8968851953d5e8dd2169f",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 2072591,
            "upload_time": "2025-07-19T20:14:44",
            "upload_time_iso_8601": "2025-07-19T20:14:44.865536Z",
            "url": "https://files.pythonhosted.org/packages/8c/a6/390eb436b4b0cd2427cfbbc608f49e533a09db543e24b272dfa802890066/selectolax-0.3.32-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dd46ad718397cde8144ad0d9327c2936537db6b6db47de3994deea080b7f1369",
                "md5": "5587c51606d6d6aaf4a809f80125189d",
                "sha256": "e4ff2d3dd7c14b5b5c97766d94783344d269b2a372b6c7b497b92ae8dd9c8a6d"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "5587c51606d6d6aaf4a809f80125189d",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 5789025,
            "upload_time": "2025-07-19T20:14:46",
            "upload_time_iso_8601": "2025-07-19T20:14:46.369670Z",
            "url": "https://files.pythonhosted.org/packages/dd/46/ad718397cde8144ad0d9327c2936537db6b6db47de3994deea080b7f1369/selectolax-0.3.32-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "43d4a9935ed8aaa7a07edecd3f103ff506a9c49da36733f05a3e36d60497a8f8",
                "md5": "e501ae7b99d5684cdfd4103145ab58a3",
                "sha256": "e7eea0a9e3b11b7a2962a29f2a3677b4536a70fa79f5bc8e033aa1f90b1a628b"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e501ae7b99d5684cdfd4103145ab58a3",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 5822626,
            "upload_time": "2025-07-19T20:14:48",
            "upload_time_iso_8601": "2025-07-19T20:14:48.445188Z",
            "url": "https://files.pythonhosted.org/packages/43/d4/a9935ed8aaa7a07edecd3f103ff506a9c49da36733f05a3e36d60497a8f8/selectolax-0.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7f991b91d16b2bcad46c2860024b0219755a871355b40380b4581cfbc4529a85",
                "md5": "d1e1aed9b8a9768a33dba0e895711176",
                "sha256": "d6eafd37aba92e56e0f0a12be22e77207cc3f2969bf12fba43431f8209f11ccb"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "d1e1aed9b8a9768a33dba0e895711176",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 1793631,
            "upload_time": "2025-07-19T20:14:50",
            "upload_time_iso_8601": "2025-07-19T20:14:50.316442Z",
            "url": "https://files.pythonhosted.org/packages/7f/99/1b91d16b2bcad46c2860024b0219755a871355b40380b4581cfbc4529a85/selectolax-0.3.32-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "59f836619c0f6608415d02b8d1f62e18c4785e46f8dce3000e0b82806a6c0323",
                "md5": "02c3fccdf13d55be454f922427f61530",
                "sha256": "fa6c7cd25ee715e00cfa686080482e96e7d7d76189bfb8c33bc05d721c5d0011"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp312-cp312-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "02c3fccdf13d55be454f922427f61530",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 1734982,
            "upload_time": "2025-07-19T20:14:51",
            "upload_time_iso_8601": "2025-07-19T20:14:51.987237Z",
            "url": "https://files.pythonhosted.org/packages/59/f8/36619c0f6608415d02b8d1f62e18c4785e46f8dce3000e0b82806a6c0323/selectolax-0.3.32-cp312-cp312-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "473b229332d4eb2d7f897e672a8055d3c08d380658c8c7651e865ecd25e8e08a",
                "md5": "df6cb8b9536ef6ea3e7bbcb9a12745b7",
                "sha256": "7e67cba82a1849329c87ff7cc909a2d0a16941cc7fc1529fd744cbde1dd7dd5d"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp313-cp313-macosx_10_13_x86_64.whl",
            "has_sig": false,
            "md5_digest": "df6cb8b9536ef6ea3e7bbcb9a12745b7",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 2076309,
            "upload_time": "2025-07-19T20:14:53",
            "upload_time_iso_8601": "2025-07-19T20:14:53.882487Z",
            "url": "https://files.pythonhosted.org/packages/47/3b/229332d4eb2d7f897e672a8055d3c08d380658c8c7651e865ecd25e8e08a/selectolax-0.3.32-cp313-cp313-macosx_10_13_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fc49bbfd2d370436034ba807939bb21007674af5c3adacbfc29c4bc623ee5929",
                "md5": "bcbc8629443c93662d92991cb0d81e16",
                "sha256": "bdcf00656cedcac39177b963124e1ed0936f76b13b1a0be5b5a5f2e3120a9777"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "bcbc8629443c93662d92991cb0d81e16",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 2070944,
            "upload_time": "2025-07-19T20:14:55",
            "upload_time_iso_8601": "2025-07-19T20:14:55.354703Z",
            "url": "https://files.pythonhosted.org/packages/fc/49/bbfd2d370436034ba807939bb21007674af5c3adacbfc29c4bc623ee5929/selectolax-0.3.32-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d44c51154ee4706c8df7e81836b078522e5cdad5f651b3bc88575fd99b4cf9ac",
                "md5": "4f01d86d5f2f763195d4f382e094dcd9",
                "sha256": "a5f9e0ecb360f45e3ba74305f0ac0fdba1e0fb265ffbbd4936f3f1b9dbe829e9"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "4f01d86d5f2f763195d4f382e094dcd9",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 5752071,
            "upload_time": "2025-07-19T20:14:56",
            "upload_time_iso_8601": "2025-07-19T20:14:56.880423Z",
            "url": "https://files.pythonhosted.org/packages/d4/4c/51154ee4706c8df7e81836b078522e5cdad5f651b3bc88575fd99b4cf9ac/selectolax-0.3.32-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "528639d01f5afda5ec4e7917a9e0c541cb3e0dc4f7dd9353022dc3aa712aec0d",
                "md5": "1b70ba33c65d20789b82dccf89f24ff9",
                "sha256": "a09fb5afe097f7fb2948e29fbb6a0b11008b54dbe6ca9dfa84f789765d5e7063"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1b70ba33c65d20789b82dccf89f24ff9",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 5787747,
            "upload_time": "2025-07-19T20:14:58",
            "upload_time_iso_8601": "2025-07-19T20:14:58.585537Z",
            "url": "https://files.pythonhosted.org/packages/52/86/39d01f5afda5ec4e7917a9e0c541cb3e0dc4f7dd9353022dc3aa712aec0d/selectolax-0.3.32-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "98faa558b1d9001112a15ace9c2bae2d05c19b57bafbf0aa4ea3efe674c76ee1",
                "md5": "4d5c26ff0b9de5e392e82e786be0a24b",
                "sha256": "911c5b9079c2c5972487cb02a549cddcb632e1da8e25b658cfbcb1063670d83c"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "4d5c26ff0b9de5e392e82e786be0a24b",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 1794548,
            "upload_time": "2025-07-19T20:15:00",
            "upload_time_iso_8601": "2025-07-19T20:15:00.599992Z",
            "url": "https://files.pythonhosted.org/packages/98/fa/a558b1d9001112a15ace9c2bae2d05c19b57bafbf0aa4ea3efe674c76ee1/selectolax-0.3.32-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3cde49337ecbcec20e9012e8525ae00bcb01d49331702a1be213f5c7d6824838",
                "md5": "121ab234d3d6d8ff936596419dfb8e9d",
                "sha256": "391f106d828cd053c990174a6111099e9f65fef699710729a433ea697d640874"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp313-cp313-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "121ab234d3d6d8ff936596419dfb8e9d",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 1734897,
            "upload_time": "2025-07-19T20:15:02",
            "upload_time_iso_8601": "2025-07-19T20:15:02.302755Z",
            "url": "https://files.pythonhosted.org/packages/3c/de/49337ecbcec20e9012e8525ae00bcb01d49331702a1be213f5c7d6824838/selectolax-0.3.32-cp313-cp313-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0fc4ad02e01306a351d5057112016ae2b1de8ecc0d40fdb95fdad4b0356b7c92",
                "md5": "10526ee00bccdb387ed1c6ee72f8339b",
                "sha256": "f5fb79dcd13a5a86010a33b128b586b23c0431f14fc08d2f81fccfc8e8c7693a"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "10526ee00bccdb387ed1c6ee72f8339b",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 2072097,
            "upload_time": "2025-07-19T20:15:03",
            "upload_time_iso_8601": "2025-07-19T20:15:03.793488Z",
            "url": "https://files.pythonhosted.org/packages/0f/c4/ad02e01306a351d5057112016ae2b1de8ecc0d40fdb95fdad4b0356b7c92/selectolax-0.3.32-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8293d5b7d2093833ef31b344d4d68210be34cad5309ce8ed7a54b684235e4c60",
                "md5": "20036b6aa0ac97566334e94588197f24",
                "sha256": "c05c1df9bfb62700f7a59dc4d990fa88a368185607ccb3c4b83f29370f631fdc"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "20036b6aa0ac97566334e94588197f24",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 2067741,
            "upload_time": "2025-07-19T20:15:05",
            "upload_time_iso_8601": "2025-07-19T20:15:05.659992Z",
            "url": "https://files.pythonhosted.org/packages/82/93/d5b7d2093833ef31b344d4d68210be34cad5309ce8ed7a54b684235e4c60/selectolax-0.3.32-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "73fd155e28a33d838c873f4457dd851ea2094f074b8db4410c8106e6fc85610b",
                "md5": "90bfd98efb394dda5e5bf7864d66b87f",
                "sha256": "67f95fe4619aa6c646c41713ef2c98cf144b801cc383746121a42d964f19dce2"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "90bfd98efb394dda5e5bf7864d66b87f",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 5549727,
            "upload_time": "2025-07-19T20:15:07",
            "upload_time_iso_8601": "2025-07-19T20:15:07.122920Z",
            "url": "https://files.pythonhosted.org/packages/73/fd/155e28a33d838c873f4457dd851ea2094f074b8db4410c8106e6fc85610b/selectolax-0.3.32-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "92fde42e29f17bc71747680584dad586321f7e2c5a3ebdfa3d0f5f7c65969710",
                "md5": "c255e2114b9f7591a1c4e730b5b3e13d",
                "sha256": "aaff80f185c978c4127443330785f86d7d0a800499a6172dfc49bb0036f17b84"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c255e2114b9f7591a1c4e730b5b3e13d",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 5548601,
            "upload_time": "2025-07-19T20:15:08",
            "upload_time_iso_8601": "2025-07-19T20:15:08.628738Z",
            "url": "https://files.pythonhosted.org/packages/92/fd/e42e29f17bc71747680584dad586321f7e2c5a3ebdfa3d0f5f7c65969710/selectolax-0.3.32-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "24bab92e901aeff922bc3b619de2eab66b2d351db74cd0721af460f0c9cacec3",
                "md5": "94990f2cebe9a2259dd67d97b7d162cf",
                "sha256": "18946b9e89044a4bab5a40c245760da2a3c1970819a4ba96af337ac916e98a98"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "94990f2cebe9a2259dd67d97b7d162cf",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 1797138,
            "upload_time": "2025-07-19T20:15:10",
            "upload_time_iso_8601": "2025-07-19T20:15:10.641650Z",
            "url": "https://files.pythonhosted.org/packages/24/ba/b92e901aeff922bc3b619de2eab66b2d351db74cd0721af460f0c9cacec3/selectolax-0.3.32-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2551fc58c1688f246d90386de6136c6b53cd7b82c83d9cdc8be7267dc19555c5",
                "md5": "43eb35df60378aa2d55f65a679535883",
                "sha256": "474e87953bd1609eff495c1f4bc8d95daf6d0e68f4666264da7c3cda6e6c5c60"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32-cp39-cp39-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "43eb35df60378aa2d55f65a679535883",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 1741341,
            "upload_time": "2025-07-19T20:15:12",
            "upload_time_iso_8601": "2025-07-19T20:15:12.427933Z",
            "url": "https://files.pythonhosted.org/packages/25/51/fc58c1688f246d90386de6136c6b53cd7b82c83d9cdc8be7267dc19555c5/selectolax-0.3.32-cp39-cp39-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1722da3d959b5870ebcfc753db52580343efaa408f0980e4094bd852c193b068",
                "md5": "8811feb26d14dc434972451fafd97c10",
                "sha256": "fb0872fce3c055a80f407395d50fcc5910a9319fb74ecf5cfc75e82af65a4e67"
            },
            "downloads": -1,
            "filename": "selectolax-0.3.32.tar.gz",
            "has_sig": false,
            "md5_digest": "8811feb26d14dc434972451fafd97c10",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 4705862,
            "upload_time": "2025-07-19T20:15:13",
            "upload_time_iso_8601": "2025-07-19T20:15:13.906594Z",
            "url": "https://files.pythonhosted.org/packages/17/22/da3d959b5870ebcfc753db52580343efaa408f0980e4094bd852c193b068/selectolax-0.3.32.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-19 20:15:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "rushter",
    "github_project": "selectolax",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "selectolax"
}
        
Elapsed time: 2.19853s