semvec/pypi-packages huggingface dataset:
DrissionPage-Enhanced 4.2.0
Enhanced DrissionPage with proxy authentication, advanced resource blocking, and WebSocket monitoring.
Requires Python: >=3.6
Keywords: DrissionPage browser automation proxy websocket selenium playwright

# ✨️ 概述

DrissionPage 是一个基于 python 的网页自动化工具。

它既能控制浏览器，也能收发数据包，还能把两者合而为一。

可兼顾浏览器自动化的便利性和 requests 的高效率。

它功能强大，内置无数人性化设计和便捷功能。

它的语法简洁而优雅，代码量少，对新手友好。

---

官方网站：[https://DrissionPage.cn](https://drissionpage.cn)

项目地址：[gitee](https://gitee.com/g1879/DrissionPage)    |    [github](https://github.com/g1879/DrissionPage)     |    [gitcode](https://gitcode.com/g1879/DrissionPage) 

您的星星是对我最大的支持💖

--- 

支持系统：Windows、Linux、Mac

python 版本：3.6 及以上

支持浏览器：Chromium 内核浏览器(如 Chrome 和 Edge)，electron 应用

---

# 🛠 如何使用

**📖 使用文档：**  [点击查看](https://DrissionPage.cn)

**交流 QQ 群：**  见使用文档

![](https://drissionpage.cn/codes.png)

---

# 💡 理念

简洁而强大！

--- 

# ☀️ 特性和亮点

作者经过长期实践，踩过无数坑，总结出的经验全写到这个库里了。

## 🎇 强大的自研内核

本库采用全自研的内核，内置无数实用功能，对常用功能作了整合和优化，对比 selenium，有以下优点：

- 不基于 webdriver
- 无需为不同版本的浏览器下载不同的驱动
- 运行速度更快
- 可以跨 iframe 查找元素，无需切入切出
- 把 iframe 看作普通元素，逻辑更清晰
- 可同时操作多个标签页，无需切换
- 可以直接读取浏览器缓存保存图片，无需用 GUI 点击另存
- 可以对整个网页截图，包括视口外的部分
- 可处理非`open`状态的 shadow-root

## 🎇 亮点功能

除了以上优点，本库还内置了无数人性化设计。

- 极简的定位语法，查找元素更加容易
- 集成大量常用功能，代码更优雅，功能强大稳定
- 无处不在的等待和自动重试，使不稳定的网络变得易于控制，程序更稳定，编写更省心
- 提供强大的下载工具，操作浏览器时也能享受快捷可靠的下载功能
- 允许反复使用已经打开的浏览器，无需每次运行从头启动浏览器，调试方便
- 使用 ini 文件保存常用配置，自动调用，提供便捷的设置，远离繁杂的配置项
- 内置 lxml 作为解析引擎，解析速度成几个数量级提升
- 使用 POM 模式封装，可直接用于测试，便于扩展
- 高度集成的便利功能，从每个细节中体现
- 还有很多细节，这里不一一列举，欢迎实际使用中体验：D

--- 

# 📝 使用条款

允许任何人以个人身份使用或分发本项目源代码，但仅限于学习和合法非盈利目的。
个人或组织如未获得版权持有人授权，不得将本项目以源代码或二进制形式用于商业行为。

使用本项目需满足以下条款，如使用过程中出现违反任意一项条款的情形，授权自动失效。
- 禁止将DrissionPage应用到任何可能违反当地法律规定和道德约束的项目中
- 禁止将DrissionPage用于任何可能有损他人利益的项目中
- 禁止将DrissionPage用于攻击与骚扰行为
- 遵守Robots协议，禁止将DrissionPage用于采集法律或系统Robots协议不允许的数据

使用DrissionPage发生的一切行为均由使用人自行负责。
因使用DrissionPage进行任何行为所产生的一切纠纷及后果均与版权持有人无关，
版权持有人不承担任何使用DrissionPage带来的风险和损失。
版权持有人不对DrissionPage可能存在的缺陷导致的任何损失负任何责任。

---  

# ☕ 请我喝咖啡

作者是个人开发者，开发和写文档工作量较为繁重。

如果本项目对您有所帮助，不妨打赏一下作者 ：）

![](https://drissionpage.cn/code2.jpg)
sql-grain 0.2.3
Sqlite databases as Grain datasets.
Requires Python: >=3.11

# 🌾 SQL Grain

SQLite databases as [Grain](https://github.com/google/grain) data sources.

sql-grain lets you prototype ML data pipelines using SQL queries before committing to a production data format. Define your training examples with expressive SQL—joins, window functions, filtering—and iterate quickly without preprocessing. When you're ready to scale, convert to ArrayRecord or similar formats; sql-grain is not designed for large-scale training.

```python
from sqlgrain import Sqlite3DataSource
import grain

source = Sqlite3DataSource(
    "data.db",
    key_query="SELECT id FROM users",
    record_query="SELECT item FROM purchases WHERE user_id = :id ORDER BY timestamp",
)
dataset = grain.MapDataset.source(source).shuffle().batch(32)
```

## Converting to ArrayRecord

Once you're ready to run larger experiments, convert the dataset to ArrayRecords using the `to_array_record` function which serializes records in [msgpack](https://msgpack.org) format with native support for NumPy arrays.

```python
from sqlgrain import to_array_record

to_array_record(source, "output/", shard_every=1000)
```

Grain's [`ArrayRecordDataSource`](https://google-grain.readthedocs.io/en/latest/data_sources.html#arrayrecord-data-source) reads the raw bytes, and we need to integrate a decoder into the data pipeline. SQL Grain's `decode_record` takes care of that, matching the behavior of `to_array_record`.

```python
from sqlgrain import from_array_record, decode_record

ar_source, metadata = from_array_record("output/")
dataset = grain.MapDataset.source(ar_source).map(decode_record).batch(32)
```

`to_array_record` is agnostic to the type of the records, and you can also serialize datasets, e.g., for pre-batching.
mkdocs-asciinema-player 1.1.0
A Mkdocs Plugin to include asciinema player in your documentation.
Requires Python: <4,>=3.10
Keywords: mkdocs, documentation, asciinema, asciinema-player

# mkdocs-asciinema-player

[![docs](https://img.shields.io/badge/docs-plugin-blue?logo=asciinema)](https://pa-decarvalho.github.io/mkdocs-asciinema-player/)
[![test](https://github.com/pa-decarvalho/mkdocs-asciinema-player/workflows/test/badge.svg)](https://github.com/pa-decarvalho/mkdocs-asciinema-player/actions)
[![pypi](https://img.shields.io/pypi/v/mkdocs-asciinema-player.svg)](https://pypi.org/project/mkdocs-asciinema-player/)
[![pyversions](https://img.shields.io/pypi/pyversions/mkdocs-asciinema-player.svg)](https://pypi.python.org/pypi/mkdocs-asciinema-player)
[![downloads](https://img.shields.io/pypi/dm/mkdocs-asciinema-player.svg)](https://pypi.org/project/mkdocs-asciinema-player/)
[![license](https://img.shields.io/pypi/l/mkdocs-asciinema-player.svg)](https://pypi.python.org/pypi/mkdocs-asciinema-player)

A Mkdocs Plugin to include asciinema player in your documentation.

## Related Projects

| Name                                                                                            | Description                                                            |
|-------------------------------------------------------------------------------------------------|------------------------------------------------------------------------|
| [98.css](https://github.com/jdan/98.css)                                                        | 98.css from [jdan](https://github.com/jdan)                            |

## Quick Setup

### Installation

Install the plugin via pip :

```sh
pip install mkdocs-asciinema-player
```

### Configure

In your `mkdocs.yml`, add `asciinema-player` to the `plugins` section :

```yaml
plugins:
  - search
  - asciinema-player
```

### Usage

In your MkDocs docs folder, add any [asciinema](https://asciinema.org/) `.cast` file and add this to any markdown page :

````markdown
```asciinema-player
{
    "file": "assets/asciinema/bootstrap.cast"
}
```
````

### More

For more information on the plugin, you can visit the the following [website](https://pa-decarvalho.github.io/mkdocs-asciinema-player/)

You will find the complete documentation of the plugin, examples of use, installation and configuration instructions.

## Contributing

See [CONTRIBUTING.md](https://github.com/pa-decarvalho/mkdocs-asciinema-player/blob/main/CONTRIBUTING.md) file.
harmonypy 0.2.0
A data integration algorithm.
Requires Python: >=3.9

# harmonypy

[![PyPI][pb]][pypi] [![Downloads][db]][pypi] [![Tests][gb]][yml] [![DOI][zb]][zen]

[pb]: https://img.shields.io/pypi/v/harmonypy.svg
[pypi]: https://pypi.org/project/harmonypy/
[db]: https://img.shields.io/pypi/dm/harmonypy?label=downloads
[gb]: https://github.com/slowkow/harmonypy/actions/workflows/python-package.yml/badge.svg
[yml]: https://github.com/slowkow/harmonypy/actions/workflows/python-package.yml
[zb]: https://img.shields.io/badge/DOI-10.5281/zenodo.4531400-blue
[zen]: https://doi.org/10.5281/zenodo.4531400

**harmonypy** is a Python implementation of the [Harmony] algorithm for integrating multiple high-dimensional datasets.

<p align="center">
  <img src="https://i.imgur.com/lqReopf.gif">
</p>

This animation shows Harmony aligning three single-cell RNA-seq datasets from different donors. [→ How to make this animation](https://slowkow.com/notes/harmony-animation/). Before Harmony, you can clearly distinguish cells from each of the three donors. After Harmony, the cells from different donors are mixed while preserving the overall shape of the data. This makes it easier to run clustering algorithms to find similar cell types that are present in different batches of data.


## Installation

```bash
pip install harmonypy
```


## Quick Start

```python
import harmonypy as hm
import pandas as pd

# Load the principal components and metadata
pcs = pd.read_csv("data/pbmc_3500_pcs.tsv.gz", sep="\t")
meta = pd.read_csv("data/pbmc_3500_meta.tsv.gz", sep="\t")

# Run Harmony to correct for batch effects (donor)
harmony_out = hm.run_harmony(pcs, meta, "donor")

# Save corrected PCs (same shape as input)
result = pd.DataFrame(harmony_out.Z_corr, columns=pcs.columns)
result.to_csv("pbmc_3500_pcs_harmony.tsv", sep="\t", index=False)
```

## Performance

Apple M1 Ultra (2022) with PyTorch MPS backend:

```
  Small (3.5k cells x 30 PCs):    3.48s
  Medium (69k cells x 50 PCs):    9.26s
  Large (858k cells x 29 PCs):    21.75s
```

Note: For small datasets, the NumPy-only version (v0.1.0) may be faster due to GPU overhead.


## Citation

If you use Harmony in your work, please cite the original paper:

> Korsunsky, I., Millard, N., Fan, J. et al. **Fast, sensitive and accurate integration of single-cell data with Harmony.** *Nat Methods* 16, 1289–1296 (2019). https://doi.org/10.1038/s41592-019-0619-0

The [Supplementary Information PDF][supp] provides detailed mathematical descriptions and implementation notes.

[Harmony]: https://github.com/immunogenomics/harmony
[supp]: https://static-content.springer.com/esm/art%3A10.1038%2Fs41592-019-0619-0/MediaObjects/41592_2019_619_MOESM1_ESM.pdf
labthings-fastapi 0.0.14
An implementation of LabThings using FastAPI
Requires Python: >=3.10

[![codecov](https://codecov.io/gh/rwb27/labthings-fastapi/branch/main/graph/badge.svg?token=IR4QNA8X6M)](https://codecov.io/gh/rwb27/labthings-fastapi)
[![Documentation Status](https://readthedocs.org/projects/labthings-fastapi/badge/?version=latest)](https://labthings-fastapi.readthedocs.io/en/latest/?badge=latest)

# labthings-fastapi

A FastAPI based library to implement a [Web of Things] interface for laboratory hardware using Python. This is a ground-up rewrite of [python-labthings], based on FastAPI and Pydantic. It is the underlying framework for v3 of the [OpenFlexure Microscope software].

Documentation, including install instructions, is available on [readthedocs].

## Installation

See [readthedocs] for installation instructions that are automatically tested. You can install this package with `pip install labthings-fastapi`.

## Developer notes

For the latest development version, clone this repository and run `pip install -e .[dev]`. 

The code is linted with `ruff .`, type checked with `mypy`, and tested with `pytest`. These all run in CI with GitHub Actions. We recommend a [pre-commit hook] to ensure `ruff` passes on every commit. `flake8` is also run in CI, primarily to enable stricter checks on docstrings. It is run as `flake8 src`. `ruff` and `flake8` are both configured from `pyproject.toml`.

All changes to the codebase should go via pull requests, and should only be merged once all the checks in the `test` job are passing. It is preferable to merge code where the `test-with-unpinned-dependencies` job fails, and deal with the dependency issues in another PR, particularly where the required changes are distinct from the code in the PR.

Dependencies are defined in `pyproject.toml` and can be compiled to `dev-requirements.txt` with:
```
uv pip compile --extra dev pyproject.toml --output-file dev-requirements.txt
```
If you're not using `uv`, just regular `pip-compile` from `pip-tools` should do the same thing.

## Demo

See [readthedocs] for a runnable demo.

[Web of Things]: https://www.w3.org/WoT/
[python-labthings]: https://github.com/labthings/python-labthings/
[OpenFlexure Microscope software]: https://gitlab.com/openflexure/openflexure-microscope-server/
[pre-commit hook]: https://openflexure.org/contribute#use-git-hooks-for-ci-checks
[readthedocs]: https://labthings-fastapi.readthedocs.io/
enoslib 10.5.0
A library to build (distributed) systems experiments
Requires Python: >=3.9
Keywords: evaluation, reproducible research, Grid5000

**************************************************
EnOSlib: Surviving the ☆homoterogeneous☆ world
**************************************************

|Code| |Doc| |Build Status| |License| |Pypi| |Pepy| |Chat| |SW|


What the ☆homoterogeneous☆ ?
----------------------------

Distributed systems practitioners on bare-metal testbeds know it: resources
(e.g. computes, networks) on a bare-metal infrastructure may have these slight
differences between each other that experimental code can become hairy. For
such code, achieving practical portability (e.g changing the infrastructure
parameters) is thus a tedious time consuming task.


☆Homoterogeneous☆ has been coined to express the gap between the idea
we have of a computing infrastructure, where resources have
static/predictable setup, and the reality of interacting with them on a daily
basis.

In this context, EnOSlib smoothes the experimental code and can

- deal with various platforms (e.g. local machine, scientific testbed, virtualized environments)
- interact programmatically with different remote resources: compute
  (servers, containers) and networks (ipv4, ipv6)
- deploy *ready-to-use* experimentation services (e.g instrumentation, observability tools).
- emulate complex network topologies (e.g for your FOG experiments)
- integrate your code with interactive development environment like Jupyter.


.. |Code| image:: https://img.shields.io/badge/code-gitlab-orange
   :target: https://gitlab.inria.fr/discovery/enoslib

.. |Doc| image:: https://img.shields.io/badge/documentation-enoslib-blue
   :target: https://discovery.gitlabpages.inria.fr/enoslib/index.html

.. |Build Status| image:: https://gitlab.inria.fr/discovery/enoslib/badges/main/pipeline.svg
   :target: https://gitlab.inria.fr/discovery/enoslib/pipelines

.. |License| image:: https://img.shields.io/badge/License-GPL%20v3-blue.svg
   :target: https://www.gnu.org/licenses/gpl-3.0

.. |Pypi| image:: https://badge.fury.io/py/enoslib.svg
   :target: https://badge.fury.io/py/enoslib

.. |Pepy| image:: https://pepy.tech/badge/enoslib/week
   :target: https://pepy.tech/project/enoslib


.. |Chat| image:: https://img.shields.io/badge/mattermost-enoslib-blueviolet
   :target: https://framateam.org/enoslib/channels/town-square

.. |SW| image:: https://archive.softwareheritage.org/badge/origin/https://gitlab.inria.fr/discovery/enoslib.git/
    :target: https://archive.softwareheritage.org/browse/origin/?origin_url=https://gitlab.inria.fr/discovery/enoslib.git