semvec/pypi-packages huggingface dataset:
pyreads 0.3.4
PyReads package to process Goodreads site data.
Requires Python: >=3.11
Keywords: goodreads, webscraper, books

# PyReads

PyReads is a Python package designed to process and analyze data from Goodreads. It allows users to fetch their Goodreads library, parse book details, and work with the data programmatically.

## Installation

To install PyReads, use `pip`:

```bash
pip install pyreads
```

## Requirements

- Python >= 3.10
- Dependencies:
  - `httpx==0.28.1`
  - `bs4==0.0.2`
  - `lxml==6.0.0`
  - `pandas==2.3.1`
  - `pydantic==2.11.7`
  - `tqdm==4.67.1`

## Usage

### Fetching Your Goodreads Library

Here’s an example of how to use PyReads to fetch your Goodreads library:

```python
from pyreads import fetch_library

# Replace with your Goodreads user ID
user_id = 110430434

# Fetch the library
library = fetch_library(user_id)

# Print the books in your library
for book in library.books:
    print(book.full_title)
```

### Example Output

```plaintext
Bear and the Three Goldilocks by Horne, Patrick
The Starving Saints by Starling, Caitlin
Straight by Tingle, Chuck
Brave New World by Huxley, Aldous
The Hellbound Heart by Barker, Clive
```
infcraft 1.0.0
A simple Python wrapper for the unofficial Infinite Craft API.
Requires Python: >=3.7

# infcraft

A simple and lightweight Python wrapper for the unofficial `infiniteback.org` API, used for the game Infinite Craft.

## Installation

Install the package directly from PyPI:

```bash
pip install infcraft
```

## Usage

The module provides a single function, `pair`, which takes two elements and returns the crafted result.

```python
import infcraft

try:
    # Combine two elements
    result = infcraft.pair("Water", "Fire")
    
    if result:
        print(f"Result: {result.name}")
        print(f"Emoji: {result.emoji}")

    # Example 2
    steam = infcraft.pair("Water", "Fire")
    engine = infcraft.pair(steam.name, "Fire")
    
    if engine:
        print(f"Crafted '{engine.name}' {engine.emoji}")

except infcraft.InfCraftError as e:
    print(f"An API error occurred: {e}")

```

The `pair` function returns a `CraftResult` object which has two attributes: `.name` and `.emoji`.

## Error Handling

The module will raise an `infcraft.InfCraftError` if there is a network problem, an HTTP error status code, or if the API returns an invalid response.