semvec/pypi-packages huggingface dataset:
GuruStock 1.0.1
GuruStock is a Python package for extracting market data from Guru app.
Requires Python: >=3.8

# GuruStock

GuruStock is a Python package for extracting market data from Guru app.

## Basic usage

```python
>>> import guru
>>> session = guru.Session('YOUR_TOKEN')
>>> tickers = ['DOLH21', 'VVAR3', 'IBOV']
>>> session.getMarketData(tickers)
[{'ticker': 'DOLH21', 'name': 'Dolar Comercial Futuro', 'close': 5350, 'price': 5411, 'variation_percent': 1.14}, {'ticker': 'VVAR3', 'name': 'Via Varejo', 'close': 15.08, 'price': 15.19, 'variation_percent': 0.73}, {'ticker': 'IBOV', 'name': 'Ibovespa', 'close': 119724.72, 'price': 119448.51, 'variation_percent': -0.23}]
```
dislash 0.0.1
A python wrapper for discord slash-commands
Requires Python: >=3.6

# dislash.py
It's a small extending library for [discord.py](https://github.com/Rapptz/discord.py), that allows to register slash-commands and respond to relevant interactions with them.
# Installation
Run any of these commands in terminal to install the lib:
```
pip install dislash.py
```
```
python3 -m pip install discord.py
```
# Examples
Note, that this library does require **[discord.py](https://github.com/Rapptz/discord.py)** installed.
## Registering a slash-command
```python
import discord
from discord.ext import commands
from dislash import slash_commands
# Import slash-command constructor
from dislash.interactions import *

# Init a client instance using discord.py
client = commands.Bot(
    command_prefix="!",
    intents=discord.Intents.default()
)
# Init a <SlashClient> instance
slash_client = slash_commands.SlashClient(client)

@client.event
async def on_connect():
    # Let's register a /random command
    sc = SlashCommand(
        name="random",
        description="Returns a random number from the given range",
        options=[
            Option(
                name="start",
                description="Enter a number",
                required=True,
                type=4   # Type-4 means INTEGER
                # Read more about types in docs
            ),
            Option(
                name="end",
                description="Enter a number",
                required=True,
                type=4
            )
        ]
    )
    # Post this command via API
    await slash_client.register_global_slash_command(sc)
    # Discord API uploads global commands for more than 1 hour
    # That's why I highly recommend .register_guild_slash_command for testing:
    await slash_client.register_guild_slash_command(guild_id, sc)
```
You should register a slash-command only once in order to make it work. You can always edit it if you want, using `.edit_global_slash_command` / `.edit_guild_slash_command` methods.

## Responding to a slash-command
```python
import discord
from random import randint
from discord.ext import commands
from dislash import slash_commands
# Import slash-command constructor
from dislash.interactions import *

# Init a client instance using discord.py
client = commands.Bot(
    command_prefix="!",
    intents=discord.Intents.default()
)
# Init a <SlashClient> instance
# in order to start tracking slash-command interactions
slash_client = slash_commands.SlashClient(client)


# Let's make a function that responds to /random
@slash_client.command()
async def random(interaction):
    # interaction is instance of `interactions.Interaction`
    # Read more about it in docs
    a = interaction.data.get_option('start').value
    b = interaction.data.get_option('end').value
    if b < a: a, b = b, a
    await interaction.reply(randint(a, b))
```