Discord bot that shows valorant your daily store by using the Ingame API

Overview

Valorant store checker - Discord Bot

Discord bot that shows valorant your daily store by using the Ingame API. written using Python and the Pycord library

Screenshot

image image

Usage

Command Action
store Shows my daily store

Prerequisites

  • Python 3.6+

Installations

  • Install requirements
pip install -r requirements.txt
  • Store discord bot token in .env and server id for slash command (if private server)
TOKEN=
   
    
SERVER_ID= 
    
     
CHANNEL_LOOP = 
     
       (if you want to loop)

     
    
   
  • Run the bot
python bot.py

Special thanks

Valorant Client API by RumbleMike

for providing a great API about Valorant!

Valorant-API.com

for every skin names and images!

Comments
  • Missing Access HOW TO FIX?

    Missing Access HOW TO FIX?

    Ignoring exception in on_message Traceback (most recent call last): File "C:\Users\USER-PC\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 382, in _run_event await coro(*args, **kwargs) File "C:\Users\USER-PC\Downloads\ValorantStoreChecker-discord-bot-master\ValorantStoreChecker-discord-bot-master\bot.py", line 59, in on_message await bot.register_commands(commands=command, guild_id=message.guild.id, force=True) File "C:\Users\USER-PC\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 471, in register_commands registered = await register("bulk", data) File "C:\Users\USER-PC\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\http.py", line 351, in request raise Forbidden(response, data) discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access

    everything seems correct but for some reason when i put -setup global or -setup guild it happens

    opened by codsec 37
  • Login Command: decode JSON failed

    Login Command: decode JSON failed

    Using the login command results in an error. image changing the code in https://github.com/staciax/Valorant-DiscordBot/blob/c76f330f2d3d1dc691330e542dab056fc3122dd2/utils/valorant/auth.py#L97 to disable the content_type check to r.json(content_type=None) reveals that the response of the riot games api to https://auth.riotgames.com/api/v1/authorization is returning a 403. I don't know what your source is but the same issue is mentioned here but the suggest fix doesn't work for me. I also found this which might be helpful.

    bug 
    opened by doluk 17
  • ImportError 'TextStyle' from 'discord'

    ImportError 'TextStyle' from 'discord'

    Getting this ImportError while trying to set up bot.

    /Downloads/Valorant-DiscordBot-master/utils/valorant/view.py", line 5, in <module> from discord import Interaction, TextStyle, ui ImportError: cannot import name 'TextStyle' from 'discord' (/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/discord/__init__.py)

    opened by jennck 10
  • account hacked.

    account hacked.

    a friend told me his account's name and pass got changed I asked him if he had 2fa enabled and he said he did but he also used /2fa command I'm not sure if it's related to the bot or not but his acc was Immortal 3 and had lots of skins

    opened by Chan0n 10
  • valorantstore bot no setting up

    valorantstore bot no setting up

    image the bot couldn't setup, its stuck on "setting up..." waited for 30 minutes and still no sign of "setup in guild!" P.S. am a beginner

    opened by ryanfrrl 9
  • got error when using -setup guild

    got error when using -setup guild

    I got a problem when i try to use -setup guild. it says discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access what should i do? image

    opened by Malvian62 8
  • How can I get player_mission and battle_pass?

    How can I get player_mission and battle_pass?

    I found this api -> StoryContract, but it doesn't work! requests return this

    {'httpStatus': 404, 'errorCode': 'RESOURCE_NOT_FOUND', 'message': 'resource not found'}
    

    then I tired url from your repo endpoints

    https://github.com/staciax/Valorant-DiscordBot/blob/cc1e9d8bb2902a71ad674e4840b9fcef7b823763/utils/valorant/endpoint.py#L116

    it return 👇

    {'httpStatus': 400, 'errorCode': 'INVALID_HEADERS', 'message': 'Bad headers used for request'}
    

    so maybe my headers is wrong? what's the correct one?

    async def fetch_contract(u):
        #url="https://pd.ap.a.pvp.net/contract-definitions/v2/definitions/story"
        url=f"https://pd.ap.a.pvp.net/contracts/v1/contracts/"+u['auth_user_id']
        headers = {
            "Content-Type": "application/json",
            "X-Riot-Entitlements-JWT": u['entitlements_token'],
            "Authorization": "Bearer " + u['access_token']
        }
        async with aiohttp.ClientSession() as session:
            async with session.get(url, headers=headers) as response:
                res = json.loads(await response.text())
    
        return res
    
    opened by Aewait 7
  • Cannot connect to host auth.riotgames.com:443

    Cannot connect to host auth.riotgames.com:443

    Capture Cannot connect to host auth.riotgames.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')]

    opened by SploeCyber 7
  • /login issue

    /login issue

    Ive changed the host of the bot and since im facing the issue that the bot is not responding to the /login command - afaik all other command semm to work but I can not test properly since login isnt working for me.

    Console responds with this when using /login:

    Task exception was never retrieved future: <Task finished name='CommandTree-invoker' coro=<CommandTree._from_interaction..wrapper() done, defined at /home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py:1087> exception=ValueError('Both or neither of value and tb must be given')> Traceback (most recent call last): File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/commands.py", line 850, in _do_call return await self._callback(self.binding, interaction, **params) # type: ignore File "/home/container/cogs/valorant.py", line 93, in login authenticate = await auth.authenticate(username, password) File "/home/container/utils/valorant/auth.py", line 120, in authenticate data = await r.json() File "/home/container/.local/lib/python3.10/site-packages/aiohttp/client_reqrep.py", line 1103, in json raise ContentTypeError( aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last): File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py", line 1240, in _call await command._invoke_with_namespace(interaction, namespace) File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/commands.py", line 876, in _invoke_with_namespace return await self._do_call(interaction, transformed_values) File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/commands.py", line 869, in _do_call raise CommandInvokeError(self, e) from e discord.app_commands.errors.CommandInvokeError: Command 'login' raised an exception: ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py", line 1089, in wrapper await self._call(interaction) File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py", line 1244, in _call await self.on_error(interaction, e) File "/home/container/cogs/errors.py", line 65, in on_app_command_error traceback.print_exception(type(error), error) File "/usr/local/lib/python3.10/traceback.py", line 116, in print_exception value, tb = _parse_value_tb(exc, value, tb) File "/usr/local/lib/python3.10/traceback.py", line 95, in _parse_value_tb raise ValueError("Both or neither of value and tb must be given") ValueError: Both or neither of value and tb must be given Unclosed client session client_session: <utils.valorant.auth.ClientSession object at 0x7f6af47e6f80> Unclosed connector connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x7f6af51b29e0>, 58355373.88184868)]'] connector: <aiohttp.connector.TCPConnector object at 0x7f6af47e6d40>

    Any recommendations what I could try to fix this?

    opened by nagisa404 6
  • How can I get price of the skin & its rank?

    How can I get price of the skin & its rank?

    HELLO!

    I'm new in Python,while using valorant-api, I found that the price of the skin and the rank of the skin (not the weapons/skinlevels includes in api,but like epic skin). How can I get the price of the skin and this rank?

    image

    url = f"https://valorant-api.com/v1/weapons/skinlevels/{skinuuid}"
    headers = {'Connection': 'close'}
    res = requests.get(url=url,headers=headers)
    res1 = json.loads(res.text)
    

    the res of this code is👇

    {'status': 200, 'data': {'uuid': 'fc4c3dcb-4f6d-5e8e-3dc3-1695f55d24c2', 'displayName': '王牌戰隊 幻象', 'levelItem': None, 'displayIcon': 'https://media.valorant-api.com/weaponskinlevels/fc4c3dcb-4f6d-5e8e-3dc3-1695f55d24c2/displayicon.png', 'streamedVideo': None, 'assetPath': 'ShooterGame/Content/Equippables/Guns/Rifles/Carbine/Flush/Levels/Carbine_Flush_Lv1_PrimaryAsset'}}
    

    PS: I use ValorantClientAPI to fetch my daily shop

    opened by Aewait 5
  • Can't load emoji

    Can't load emoji

    Bot didn;t load emoji บอทไม่โหลด emoji ครับ

    ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง Response Status: 200 image_2022-04-30_182949427

    opened by BEERZXD 5
  • /login issue

    /login issue

    BOT IS READY ! Version: 3.3.5 Task exception was never retrieved future: <Task finished name='CommandTree-invoker' coro=<CommandTree._from_interaction..wrapper() done, defined at C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py:1087> exception=TypeError('Subscripted generics cannot be used with class and instance checks')> Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\commands.py", line 850, in _do_call return await self._callback(self.binding, interaction, **params) # type: ignore File "E:\Downloads\Compressed\Valorant-DiscordBot-3.4.0\Valorant-DiscordBot-3.4.0\cogs\valorant.py", line 93, in login authenticate = await auth.authenticate(username, password) File "E:\Downloads\Compressed\Valorant-DiscordBot-3.4.0\Valorant-DiscordBot-3.4.0\utils\valorant\auth.py", line 122, in authenticate data = await r.json() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\aiohttp\client_reqrep.py", line 1103, in json raise ContentTypeError( aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py", line 1240, in _call await command._invoke_with_namespace(interaction, namespace) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\commands.py", line 876, in _invoke_with_namespace return await self._do_call(interaction, transformed_values) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\commands.py", line 869, in _do_call raise CommandInvokeError(self, e) from e discord.app_commands.errors.CommandInvokeError: Command 'login' raised an exception: ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py", line 1089, in wrapper await self._call(interaction) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py", line 1244, in _call await self.on_error(interaction, e) File "E:\Downloads\Compressed\Valorant-DiscordBot-3.4.0\Valorant-DiscordBot-3.4.0\cogs\errors.py", line 61, in on_app_command_error elif isinstance(error, Union[AppCommandNotFound, MissingPermissions, BotMissingPermissions]): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\typing.py", line 697, in instancecheck return self.subclasscheck(type(obj)) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\typing.py", line 700, in subclasscheck raise TypeError("Subscripted generics cannot be used with" TypeError: Subscripted generics cannot be used with class and instance checks Unclosed client session client_session: <utils.valorant.auth.ClientSession object at 0x000002A7EDAB6C40> Unclosed connector connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x000002A7ED9F6E80>, 30102.031), (<aiohttp.client_proto.ResponseHandler object at 0x000002A7ED71F0A0>, 30102.078)]'] connector: <aiohttp.connector.TCPConnector object at 0x000002A7ED2099A0>

    opened by nungsorb 0
Releases(v3.4.0)
  • v3.4.0(Oct 17, 2022)

    What's Changed

    • Add Docker CI by @marchingon12 in https://github.com/staciax/Valorant-DiscordBot/pull/71
    • Update en-US localization by @overestimate in https://github.com/staciax/Valorant-DiscordBot/pull/75
    • Renamed .json of Traditional Chinese(zh-TW) to fix the issue of localisation by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/77
    • Allow users to add notify with multilingual names by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/78
    • Support direct deployment to Replit by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/79
    • Added 'Run on Repl.it' badge by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/80
    • Update pyproject.toml by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/81
    • Update README.md by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/82
    • Bugfix: update Riot Client User Agent version by @mzfan in https://github.com/staciax/Valorant-DiscordBot/pull/87
    • Riot user agent version update by @mzfan in https://github.com/staciax/Valorant-DiscordBot/pull/88
    • Fix tier emojis in /nightmarket command. by @R3nzTheCodeGOD in https://github.com/staciax/Valorant-DiscordBot/pull/89
    • Turkish language support by @mustafa383 in https://github.com/staciax/Valorant-DiscordBot/pull/91

    New Contributors

    • @overestimate made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/75
    • @scarrrr316 made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/77
    • @mzfan made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/87
    • @R3nzTheCodeGOD made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/89
    • @mustafa383 made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/91

    Full Changelog: https://github.com/staciax/Valorant-DiscordBot/compare/v3.3.5...v3.4.0

    Source code(tar.gz)
    Source code(zip)
  • v3.3.5(Jul 4, 2022)

    What's Changed

    • German by @Hackante in https://github.com/staciax/Valorant-DiscordBot/pull/69

    New Contributors

    • @Hackante made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/69

    Full Changelog: https://github.com/staciax/Valorant-DiscordBot/compare/v3.2.6...v3.3.5

    Source code(tar.gz)
    Source code(zip)
  • v3.2.1(Jun 18, 2022)

  • v3.1.3-fix(Jun 14, 2022)

    • Cleaned imports

    • Better error handler

    Catching specific errors that might be raised. added a super call to close optimized imports

    • cloudflare fix

    What's Changed

    • Code clean up by @RyugaXhypeR in https://github.com/staciax/Valorant-DiscordBot/pull/58

    New Contributors

    • @RyugaXhypeR made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/58

    Full Changelog: https://github.com/staciax/Valorant-DiscordBot/compare/v3.1.1...v3.1.2

    Source code(tar.gz)
    Source code(zip)
  • v3.1.1(Jun 11, 2022)

    Command

    • /bundles support multiple bundle

    Locale

    • Fixed bug not translating some texts
    • Fixed cookies can't refresh

    Bug fixes

    • cloudflare -.-
    • back to aiohttp
    Source code(tar.gz)
    Source code(zip)
  • v3.0.8(May 25, 2022)

  • v3.0.7-v2(May 22, 2022)

  • v3.0.6-v3(May 20, 2022)

  • v3.0.5(May 19, 2022)

  • v3.0.4-v2(May 14, 2022)

    Add commands

    /notify channel - change notify channel ['DM', 'CHANNEL']

    support quick check (without login)

    • /point, /mission, /battlepass, /nightmarket

    language

    • add dm_message error
    • language for /notify channel

    Add config commands

    • -unsync guild, -unsync global

    Bug fixes in v2

    • /nightmarket is not working
    Source code(tar.gz)
    Source code(zip)
  • v3.0.3(May 2, 2022)

    Utility funtion to class

    • GetItems, GetEmoji, Generate_Embed, JSON

    update commands

    /store - add button share when use store without login

    pull request

    • add Dockerfile by kiznick

    bug fixes

    type object 'JSON' has no attribute 'json_read'

    Source code(tar.gz)
    Source code(zip)
  • v3.0.2(Apr 29, 2022)

    New feature

    • Add Vietnamese language translation by TMADZ2007
    • update france, thai language
    • update default season_id
    • setup_emoji can force update
    • update mission embed format
    • debug command owner only can use it
    • little bug fixed
    Source code(tar.gz)
    Source code(zip)
  • v3.0.1(Apr 27, 2022)

    New feature

    • Add commands support Interaction Locale** (translate)

    • /notify add, /notify list, /notify mode ,/notify test, /bundle, /bundles, /debug

    Supported new languages

    • fr - France

    Bug Fixes

    • commands error when using languages ​​other than en-US, th
    • some bundles could not be searched.
    Source code(tar.gz)
    Source code(zip)
  • v3.0.0(Apr 25, 2022)

    New Commands

    • /bundle - inspect a specific bundle
    • /bundles - Show the current featured bundles
    • /debug - Command debug for the bot

    Breaking Changes

    • change library pycord to discord.py

    • rewrite all code and clearly specify the type of attribute

    • /notify to commands group /notify add - Set a notification when a specific skin is available on your store /notify list - View skins you have set a for notification. /notify mode - Change notification mode /notify test - Testing notification

    • /store without /login everyone can see message

    New Feature

    • interaction.locale - automatic change language response
    • currently th-TH, en-US | you can add new languages in folder languages
    • change -setup guild to -sync guild , -sync global

    Bug Fixes

    • wait for testing

    Road Map

    • /contract
    • /party
    • /career

    Moved to discord.py library

    Source code(tar.gz)
    Source code(zip)
  • 2.2.6(Apr 10, 2022)

  • 2.2.5(Mar 25, 2022)

  • v2.2.0(Mar 22, 2022)

  • 2.1.0(Mar 14, 2022)

  • v2.0.0(Feb 14, 2022)

Owner
STACIA
my name is stacia.
STACIA
TheTimeMachine - Weaponizing WaybackUrls for Recon, BugBounties , OSINT, Sensitive Endpoints and what not

The Time Machine - Weaponizing WaybackUrls for Recon, BugBounties , OSINT, Sensi

Anmol K Sachan 112 Dec 29, 2022
A command line interface for accessing google drive

Drive Cli Get the ability to access Google Drive without leaving your terminal. Inspiration Google Drive has become a vital part of our day to day lif

Chirag Shetty 538 Dec 12, 2022
A simple Python API wrapper for Cloudflare Stream's API.

python-cloudflare-stream A basic Python API wrapper for working with Cloudflare Stream. Arbington.com started off using Cloudflare Stream. We used the

Arbington 3 Sep 08, 2022
My Advent of Code solutions. I also upload videos of my solves: https://www.youtube.com/channel/UCuWLIm0l4sDpEe28t41WITA

My solutions to adventofcode.com puzzles. I post videos of me solving the puzzles in real-time at https://www.youtube.com/channel/UCuWLIm0l4sDpEe28t41

195 Jan 04, 2023
Python script to delete old / embarrassing tweets.

Delete Tweets Do you have hundreds of embarrassing tweets on your Twitter profile, that you tweeted over a decade ago as an innocent high schooler, th

Linda Zheng 9 Nov 26, 2022
Get your Pixiv token (for running upbit/pixivpy)

gppt: get-pixivpy-token Get your Pixiv token (for running upbit/pixivpy) Refine pixiv_auth.py + its fork Install ❭ pip install gppt Run Note: In advan

haruna 58 Jan 04, 2023
Script que realiza a identificação de todos os logins e senhas dos wifis conectados em uma máquina e envia os dados para um e-mail especificado.

getWIFIConnection Script que realiza a identificação de todos os logins e senhas dos wifis conectados em uma máquina e envia os dados para um e-mail e

Vinícius Azevedo 3 Nov 27, 2022
Discord-selfbot - Very basic discord self bot

discord-selfbot Very basic discord self bot still being actively developed requi

nana 4 Apr 07, 2022
Botto - A discord bot written in python that uses the hikari and lightbulb modules to make this bot

❓ About Botto Hi! This is botto, a discord bot written in python that uses the h

3 Sep 13, 2022
A Python library for PagerDuty.

Pygerduty Python Library for PagerDuty's REST API and Events API. This library was originally written to support v1 and is currently being updated to

Dropbox 164 Dec 20, 2022
Create a roles overview page for all Ansible roles/playbooks in Gitlab

ansible-create-roles-overview Overview The script ./create_roles_overview.py queries a Gitlab API for Ansible roles and playbooks. It will iterate ove

2 Oct 11, 2021
multi-purpose discord bot

virus multi-purpose discord bot ⚠️ WARNING This project is incomplete and may not work as expected. Download & Run Install Python =3.10 Clone the sou

miten 2 Jan 17, 2022
A little proxy tool based on Tencent Cloud Function Service.

SCFProxy 一个基于腾讯云函数服务的免费代理池。 安装 python3 -m venv .venv source .venv/bin/activate pip3 install -r requirements.txt 项目配置 函数配置 开通腾讯云函数服务 在 函数服务 新建 中使用自定义

Mio 716 Dec 26, 2022
Monetize your apps with KivAds using Google AdMob api.

KivAds(WIP) Monetize your apps with KivAds using Google AdMob api. KivAds uses the latest version of Google AdMob sdk(version 20.0.0). KivAds exposes

Guhan Sensam 16 Nov 05, 2022
A file-based quote bot written in Python

Let's Write a Python Quote Bot! This repository will get you started with building a quote bot in Python. It's meant to be used along with the Learnin

A . S . M . RADWAN 2 Apr 03, 2022
Google Sheets Python API v4

pygsheets - Google Spreadsheets Python API v4 A simple, intuitive library for google sheets which gets your work done. Features: Open, create, delete

Nithin Murali 1.4k Jan 08, 2023
A thin Python Wrapper for the Dark Sky (formerly forecast.io) weather API

Dark Sky Wrapper This is a wrapper for the Dark Sky (formerly forecast.io) API. It allows you to get the weather for any location, now, in the past, o

Ze'ev Gilovitz 414 Nov 16, 2022
A website application running in Google app engine, deliver rss news to your kindle. generate mobi using python, multilanguages supported.

Readme of english version refers to Readme_EN.md 简介 这是一个运行在Google App Engine(GAE)上的Kindle个人推送服务应用,生成排版精美的杂志模式mobi/epub格式自动每天推送至您的Kindle或其他邮箱。 此应用目前的主要

2.6k Jan 06, 2023
python script to buy token from pancakeswap

pancakeswapBot python script to buy token from pancakeswap Change your privatekey!!! on line 58 (signed_txn = web3.eth.account.sign_transaction(pancak

206 Dec 31, 2022
Python script to Funge NFTs.

Python script to Funge NFTs. It scrapes OpenSea for a given list of NFT collections and downloads a certain number of NFTs from each collection or the entire collections.

3 Apr 28, 2022