PokemonGo-Bot - The Pokemon Go Bot, baking with community.

Overview

PokemonGo-Bot

PokemonGo-Bot is a project created by the PokemonGoF team. Since no public API available for now, a patch to use HASH-Server was applied. PokemonGoF is not part of HASH-Server dev team and has no connection with it.

Bot Map and Terminal

Donation

Bitcoin: 1PJMCx9NNQRasQYaa4MMff9yyNFffhHgLu

Table of Contents

The project is currently setup in two main branches:

  • dev also known as beta - This is where the latest features are, but you may also experience some issues with stability/crashes.
  • master also known as stable - The bot 'should' be stable on this branch, and is generally well tested.

Discord

Bugs / Issues

If you discover a bug in the bot, please search our issue tracker first. If it hasn't been reported, please create a new issue and ensure you follow the template guide so that our team can assist you as quickly as possible.

Feature Requests

If you have a great idea to improve the bot, please search our feature tracker first to ensure someone else hasn't already come up with the same great idea. If it hasn't been requested, please create a new request and ensure you follow the template guide so that it doesnt get lost with the bug reports. While you're there vote on other feature requests to let the devs know what is most important to you.

Pull Requests

If you'd like to make your own changes, make sure you follow the pull request template, and ensure your PR is made against the 'dev' branch.

If this is your first time making a PR or aren't sure of the standard practice of making a PR, here are some articles to get you started.

Features

  • Based on Python for botting on any operating system - Windows, macOS and Linux
  • Multi-bot supported
  • Able to edit bot if certain level has reached
  • Allow custom hash service provider, if any
  • GPS Location configuration
  • Search & spin Pokestops / Gyms
  • Diverse options for humanlike behavior from movement to overall game play
  • Ability to add multiple coordinates to select between your favorite botting locations
  • Support self defined path / route
  • Advanced catch, evolve and transfer confuration using our PokemonOptimizer settings
  • Determine which pokeball to use
  • Rules to determine the use of Razz and Pinap Berries
  • Exchange, evolve and catch Pokemon base on pre-configured rules
  • Transfer Pokemon in bulk
  • Auto switch mode (Inventory Checks - switches between catch/farming items)
  • Limit the step to farm specific area for pokestops
  • Limit Spin Pokestops/Catch Pokemons per day
  • IV Functionality filter
  • Mass rename of Pokemon with comprehenive rules
  • Adjust delay between Pokemon capture & Transfer as per configuration
  • Telegram integration - reporting of bot's events
  • Snipe Pokemon within a radius of 30Km, either through telegram command or local map (Example Rocket Map)
  • Issue command through telegream - Activate Lucky egg / Incense, Snipping
  • Support dropping of Lure Module
  • Incubate eggs & Buddy walk
  • Bot is able to identify pokemon in their family
  • Set family ID as VIP and prioritize bot to catch it!
  • Transfer red slashed pokemons
  • Set shiny pokemons as VIP
  • Deploy a pokemon in Gym if there are slots available
  • Docker support
  • Auto heal Pokemons
  • Displaying of Hash expiration date and RPM information

Credits

Contributors

  • eggins [first pull request]
  • crack00r
  • ethervoid
  • Bashin
  • tstumm
  • AdaptCharm
  • Reaver01
  • rarshonsky
  • earthchie
  • haykuro
  • 05-032
  • sinistance
  • CapCap
  • YvesHenri
  • mzupan
  • gnekic(GeXx)
  • Shoh
  • JSchwerberg
  • luizperes
  • brantje
  • VirtualSatai
  • dmateusp
  • jtdroste
  • msoedov
  • Grace
  • Calcyfer
  • asaf400
  • guyz
  • DavidK1m
  • budi-khoirudin
  • riberod07
  • th3w4y
  • Leaklessgfy
  • steffwiz
  • pulgalipe
  • BartKoppelmans
  • phil9l
  • VictorChen
  • AlvaroGzP
  • fierysolid
  • surfaace
  • surceis
  • SpaceWhale
  • klingan
  • reddivision
  • DayBr3ak
  • kbinani
  • mhdasding
  • MFizz
  • NamPNQ
  • z4ppy.bbc
  • matheussampaio
  • Abraxas000
  • lucasfevi
  • pokepal
  • Moonlight-Angel
  • mjmadsen
  • nikofil
  • bigkraig
  • nikhil-pandey
  • thebigjc
  • JaapMoolenaar
  • eevee-github
  • g0vanish
  • cmezh
  • Nivong
  • kestel
  • simonsmh
  • joaodragao
  • extink
  • Quantra
  • pmquan
  • net8q
  • SyncX
  • umbreon222
  • DeXtroTip
  • rawgni
  • Breeze Ro
  • bruno-kenji
  • Gobberwart
  • javajohnHub
  • kolinkorr839
  • lepeli
  • davidakachaos
  • MerlionRock
  • walaoaaa1234
  • pogarek
  • goedzo
  • solderzzc aka BIG BOSS
  • nbq aka Holoshed

Disclaimer

©2016 Niantic, Inc. ©2016 Pokémon. ©1995–2016 Nintendo / Creatures Inc. / GAME FREAK inc. © 2016 Pokémon/Nintendo Pokémon and Pokémon character names are trademarks of Nintendo. The Google Maps Pin is a trademark of Google Inc. and the trade dress in the product design is a trademark of Google Inc. under license to The Pokémon Company. Other trademarks are the property of their respective owners. Privacy Policy

PokemonGo-Bot is intended for academic purposes and should not be used to play the game PokemonGo as it violates the TOS and is unfair to the community. Use the bot at your own risk.

PokemonGoF does not support the use of 3rd party apps or apps that violate the TOS.

Analytics

Comments
  • Perm Ban Test Results

    Perm Ban Test Results

    Greetings,

    Was a casualty of the first wave of perma-bans. Most of the bot activity was limited to activity in and around the neighborhood where I live and work.

    After the ban I created a test account via PTC. I wanted to understand what would trigger a ban. I decided that until I reached level 20 I would keep no Pokemon nor visit a Gym. I would basically walk, spin and transfer whatever I encountered. The longest session would be no more than 1 hour long. I would keep the activity to two locations; home and work. No teleports, just the two locations I happened to be physically. The goal was to keep a low profile and emulate player behaviors.

    The new account was setup on 8/12. Over the next four days the bot would run in roughly hour long blocks, 2-4 times a day. Typically in the AM, then lunch, then dinner. Two of the days I did a late night session around midnight. Never encountered any bans with this approach. The last session I ran was during lunch today. I was level 17 at this point. However, this session I forgot to kill it after an hours. It ended up running for about 2 hours. Since Im in a city with dense pokestops and pokemon a ton were encountered.

    I went to run the next test. Launched it again and got the "failed to get game data" message. The bot reported "Probably permabanned, Game Over ! Play again at https://club.pokemon.com/us/pokemon-trainer-club/sign-up/"

    Used a non-test account and was able to login without issue. This told me it was not a server issue.

    There was clearly something that triggered this ban.

    Can it be that I reached level 17 too quickly? Could be that the frequency of play was too often? 4-5 hours a day? I was not teleporting and had no inventory of high level pokemon. Could it be the rate at which they were turned in for candy?

    Including my config for reference. Going to try another test account and adjust the rate of play. Any other suggestions I'm happy to test out.

    {
        "auth_service": "",
        "username": "",
        "password": "",
        "location": "",
        "gmapkey": "",
          "tasks": [
            {
              "type": "HandleSoftBan"
            },
            {
              "type": "SleepSchedule",
              "config": {
                "enabled": true,
                "time": "22:54",
                "duration":"7:46",
                "time_random_offset": "00:24",
                "duration_random_offset": "00:43"
              }
            },
            {
              "type": "CollectLevelUpReward"
            },
            {
              "type": "IncubateEggs",
              "config": {
                "longer_eggs_first": true
              }
            },
            {
              "type": "UpdateLiveStats",
              "config": {
                "enabled": true,
                "min_interval": 10,
                "stats": ["uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited"],
                "terminal_log": true,
                "terminal_title": true
              }
            },
            {
              "type": "TransferPokemon"
            },
            {
              "type": "NicknamePokemon",
              "config": {
                "enabled": true,
                "nickname_template": "{iv_pct}_{iv_ads}"
              }
            },
            {
              "type": "EvolvePokemon",
              "config": {
                  "evolve_all": "none",
                  "first_evolve_by": "cp",
                  "evolve_above_cp": 500,
                  "evolve_above_iv": 0.8,
                  "logic": "or",
                  "evolve_speed": 20,
                  "use_lucky_egg": false
              }
            },
            {
              "type": "RecycleItems",
              "config": {
                "min_empty_space": 15,
                "item_filter": {
                  "Pokeball":       { "keep" : 25 },
              "Greatball":      { "keep" : 125 },
                  "Potion":         { "keep" : 10 },
                  "Super Potion":   { "keep" : 20 },
                  "Hyper Potion":   { "keep" : 30 },
                  "Revive":         { "keep" : 15 },
                  "Razz Berry":     { "keep" : 45 }
                }
              }
            },
            {
              "type": "CatchVisiblePokemon"
            },
            {
              "type": "CatchLuredPokemon"
            },
            {
              "type": "SpinFort"
            },
            {
              "type": "MoveToFort",
              "config": {
                  "lure_attraction": true,
                  "lure_max_distance": 2000
              }
            },
            {
              "type": "FollowSpiral",
              "config": {
                "diameter": 4,
                "step_size": 70
              }
            }
          ],
          "map_object_cache_time": 5,
          "forts": {
            "avoid_circles": true,
            "max_circle_size": 50,
            "cache_recent_forts": true
          },
          "websocket_server": false,
          "walk": 4.16,
          "action_wait_min": 1,
          "action_wait_max": 4,
          "debug": false,
          "test": false,
          "health_record": true,
          "location_cache": false,
          "distance_unit": "km",
          "reconnecting_timeout": 15,
          "catch_randomize_reticle_factor": 0.5,
          "catch_randomize_spin_factor": 0.5,
          "min_ultraball_to_keep": 10,
          "logging_color": true,
          "catch": {
            "any": {"catch_above_cp": 0, "catch_above_iv": 0, "logic": "or"},
            "// Example of always catching Rattata:": {},
            "// Rattata": { "always_catch" : true }
          },
          "catch_throw_parameters": {
            "excellent_rate": 0.1,
            "great_rate": 0.5,
            "nice_rate": 0.3,
            "normal_rate": 0.1,
            "spin_success_rate" : 0.5
          },
          "release": {
            "any": {"release_below_cp": 1000, "release_below_iv": 0.9, "logic": "and"},
            "// Example of always releasing Rattata:": {},
            "// any": {"always_release": true},
            "// Example of keeping 3 stronger (based on CP) Pidgey:": {},
            "// Pidgey": {"keep_best_cp": 3},
            "// Example of keeping 2 stronger (based on IV) Zubat:": {},
            "// Zubat": {"keep_best_iv": 2},
            "// Also, it is working with any": {},
            "// any": {"keep_best_iv": 3},
            "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": {},
            "// Zubat": {"keep_best_cp": 2, "keep_best_iv": 3}
          },
          "vips" : {
               "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate!": {},
              "any": {"catch_above_cp": 1200, "catch_above_iv": 0.9, "logic": "or" },
              "Lapras": {},
              "Moltres": {},
              "Zapdos": {},
              "Articuno": {},
    
              "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": {},
              "Mewtwo": {},
              "Dragonite": {},
              "Snorlax": {},
              "// Mew evolves to Mewtwo": {},
              "Mew": {},
              "Arcanine": {},
              "Vaporeon": {},
              "Gyarados": {},
              "Exeggutor": {},
              "Muk": {},
              "Weezing": {},
              "Flareon": {}
    
          }
      }
    
    Enhancement Help Wanted Help to Test 
    opened by talobear 236
  • Niantic Server responses changed. Can't catch pokemon or see pokestops

    Niantic Server responses changed. Can't catch pokemon or see pokestops

    EDIT from TheSavior:

    It looks like the request structure has changed. Every bot, map, and 3rd party app is currently working to update.

    Niantic changed their API. People are working on a fix but there is no ETA yet. If you want to know what changed read this: https://www.reddit.com/r/pokemongodev/comments/4w1cvr/pokemongo_current_api_status/

    Original Post:

    [15:04:18] PokemonGO Bot v1.0 [15:04:18] Configuration initialized [15:04:18] [x] Coordinates found in passed in location, not geocoding. [15:04:18] [15:04:18] Location Found: 40.776426, -73.969657 [15:04:18] GeoPosition: (40.776426, -73.969657, 0) [15:04:18] [15:04:18] [x] Parsing cached location... [15:04:18] [15:04:18] [x] Last location flag used. Overriding passed in location [15:04:18] [x] Last in-game location was set as: (40.7761427978432, -73.9701562 916473, 0) [15:04:18] [15:04:18] Attempting login to Pokemon Go. 2016-08-03 15:04:20,665 [pgoapi.pgoapi] [ERROR] Login failed - unexpected serve response! [15:04:20] [X] Login Error, server busy [15:04:20] [X] Waiting 10 seconds to try again 2016-08-03 15:04:32,917 [pgoapi.pgoapi] [ERROR] Login failed - unexpected serve response! [15:04:32] [X] Login Error, server busy [15:04:32] [X] Waiting 10 seconds to try again [15:04:37] Exiting PokemonGo Bot [15:04:42] Server seems to be busy or offline - try again - 4/15 [15:04:43] Server seems to be busy or offline - try again - 5/15 [15:04:44] Server seems to be busy or offline - try again - 6/15 [15:04:45] Server seems to be busy or offline - try again - 7/15 [15:04:47] Server seems to be busy or offline - try again - 8/15 [15:04:48] Server seems to be busy or offline - try again - 9/15

    This happens to all my accounts including the ones I only use with the bot. Login from phone is fine, however.

    opened by TianCNCA 198
  • PokemonGo-Map Synergy

    PokemonGo-Map Synergy

    Description: This worker will fetch current pokemon spawns from /raw_data of an PokemonGo-Map instance. It will also update the location of PokemonGo-Map when the bot is moving away. There are two modes available:

    distance: will move to the nearest pokemon priority: will move to the pokemon with the highest priority assigned (tie breaking by distance)

    other configs: address address of the webserver of PokemonGo-Map prioritize vips will prioritize vips in distance and priority mode above normal pokemon min_time: minimum time the pokemon has to be available before despawn max_distance: maximum distance the pokemon is allowed to be when walking, ignored when sniping snipe if enabled will teleport to target pokemon, encounter it, teleport back then catch it if disabled will walk update_map disable/enable if the map location should be automatically updated catch a dictionary of pokemon to catch with an assigned priority (higher => better) vip pokemon are automatically catched without an entry here

    Second Review Required Waiting on Changes Help to Test 
    opened by mhdasding 152
  • **META** Server busy or offline issues

    **META** Server busy or offline issues

    Edited by moderator:

    Please keep all discussions about Server busy or offline in this issue only, do not create new issues or they will be closed without warning.

    At this stage it's unconfirmed if there is server issues or hard bans being placed on accounts

    Other current META issues:

    #3682 - META Server busy or offline issues #3308 - META Stuck between two forts / Moving to 2 forts at the same time / Constant Loop #3700 - META Soft bans - Try again spins / Pokemon vanishing #3746 - META Banwaves - Permanent Bans

    opened by fe-ax 115
  • Improve step_walker

    Improve step_walker

    Improve step_walker

    • Can instanciate walkers one time and call step() multiple times on the same walker
    • Speed randomized at each step
    • Speed can be overridden in the step parameter to pass 0 to anything
    Enhancement New Functionality Approved 
    opened by julienlavergne 111
  • follow_* and walkers set_position through StepWalker

    follow_* and walkers set_position through StepWalker

    I do not feel this is ready to merge. But I want to get testers.

    Goals it to drive all set position api calls through StepWalker. That includes centralizing noise and humanizing to position to one location. Outputting position updates from one location.

    Repeat, I'm not done. Do not merge.

    Second Review Required Help to Test 
    opened by mjmadsen 98
  • Some XP efficiency improvements

    Some XP efficiency improvements

    All this code was based on PR #2491 (thx a lot, @matheussampaio).

    Run tasks in a time based way

    BaseTask now adds two helpers to every single task: _update_last_ran and _time_to_run. Both can be used in any task to ensure will only run from time to time and not in every single tick. Example:

    def work(self):
        if not self._time_to_run():
            return False
        self._update_last_ran()
    

    Then if the task config someone like this can be used to customise the time interval (in seconds):

    {
        "type": "TransferPokemon",
        "config": {
            "run_interval": 60 
         }
    }
    

    Added option in SpinFort and MoveToFort to run even without inventory space (because RecycleItem may be run only after more time)

    {
        "type": "SpinFort",
        "config": {
            "ignore_item_count": true
        }
    },
    

    Exp result:

    I saw a bigger than 50% experience per hour increase in my bot. Everyone should see something similar unless in a bad place to bot or with poor configuration.

    2016-08-07 19:59:34,083 [ cli] [INFO] Total XP Earned: 13540 Average: 66236.29/h

    Second Review Required Help to Test Approved 
    opened by douglascamata 96
  • **META** Soft bans - Try again spins / Pokemon vanishing

    **META** Soft bans - Try again spins / Pokemon vanishing

    Edited by moderator:

    Please keep all discussions about being Try again spins / Pokemon vanishing in this issue only, do not create new issues or they will be closed without warning.

    At this stage it looks like softbans are occurring for some users (try again spins & Pokemon vanishing) while others are experiencing hard bans (being unable to log in - Server busy or offline)

    Other current META issues:

    #3682 - META Server busy or offline issues #3308 - META Stuck between two forts / Moving to 2 forts at the same time / Constant Loop #3700 - META Soft bans - Try again spins / Pokemon vanishing #3746 - META Banwaves - Permanent Bans

    opened by Coburnss 88
  • TO DEVS

    TO DEVS

    Hi. As u know, a new API model wil be soon ready. That means while pogodevs RE are still try crack the last API, pokefarmer RE's has done, and they'll rent hash service to others by supscription. My question is if this proyect will adapt to this new service, or not.

    After few days testing pokefarmer desktop, only can say this proyect still is best ever bot made. More configurable, thousands of options and very easy to use.

    Thx to all

    opened by Jcolomar 69
  • Improve humanize walking variance

    Improve humanize walking variance

    • Account for bearing when adding in walking "sway"
    • We now only sway "left" and "right" as we head towards our destination
    Enhancement Second Review Required Help to Test Approved 
    opened by mjmadsen 66
  • bot crashed

    bot crashed

    Actual Behavior

    Traceback (most recent call last): File "pokecli.py", line 502, in main() File "pokecli.py", line 133, in main raise e IndexError: list index out of range

    Steps to Reproduce

    Other Information

    OS: windows 7 Git Commit: (run 'git log -n 1 --pretty=format:"%H"' and paste it here) Python Version: (run 'python -V' and paste it here)

    opened by skywalker878 62
  • Install Failure - Docker - ERROR: unable to select packages:

    Install Failure - Docker - ERROR: unable to select packages:

    Expected Behavior

    Expected Docker Image to be built

    Actual Behavior

    docker build -t pokemongo-bot . [+] Building 3.9s (9/21)
    => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 37B 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 35B 0.0s => [internal] load metadata for docker.io/library/alpine:latest 1.1s => [auth] library/alpine:pull token for registry-1.docker.io 0.0s => CACHED https://api.github.com/repos/PokemonGoF/PokemonGo-Bot/commits/master 0.0s => [ 1/15] FROM docker.io/library/[email protected]:686d8c9dfa6f3ccfc8230bc3178d23f84eeaf7e457f36f271ab1acc53015037c 0.0s => CACHED https://raw.githubusercontent.com/PokemonGoF/PokemonGo-Bot/master/requirements.txt 0.0s => CACHED [ 2/15] WORKDIR /usr/src/app 0.0s => ERROR [ 3/15] RUN apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 2.7s

    [ 3/15] RUN apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 rm -f:
    #7 0.206 fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/main/aarch64/APKINDEX.tar.gz #7 1.633 fetch https://dl-cdn.alpinelinux.org/alpine/v3.16/community/aarch64/APKINDEX.tar.gz #7 2.696 ERROR: unable to select packages: #7 2.710 python (no such package): #7 2.710 required by: world[python]


    executor failed running [/bin/sh -c apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 rm -f]: exit code: 1

    Your FULL config.json (remove your username, password, gmapkey and any other private info)

    { "websocket_server": false, "heartbeat_threshold": 10, "enable_social": false, "killswitch": true, "check_niantic_api": false, "solve_captcha": false, "bypass_warning": false, "live_config_update": { "enabled": false, "tasks_only": false }, "tasks": [ { "type": "TelegramTask", "config": { "enabled": false, "master": null, "password": null, "// old syntax, still supported: alert_catch": [ "all" ], "// new syntax:": { }, "alert_catch": { "all": { "operator": "and", "cp": 1300, "iv": 0.95 }, "Snorlax": { "operator": "or", "cp": 900, "iv": 0.9 } } } }, { "type": "DiscordTask", "config": { "enabled": false, "master": null, "// old syntax, still supported: alert_catch": [ "all" ], "// new syntax:": { }, "alert_catch": { "all": { "operator": "and", "cp": 1300, "iv": 0.95 }, "Snorlax": { "operator": "or", "cp": 900, "iv": 0.9 } } } }, { "//NOTE: This task MUST be placed on the top of task list": { }, "type": "RandomAlivePause", "config": { "enabled": false, "min_duration": "00:00:10", "max_duration": "00:10:00", "min_interval": "00:05:00", "max_interval": "01:30:00" } }, { "type": "HandleSoftBan" }, { "type": "RandomPause", "config": { "enabled": false, "min_duration": "00:00:10", "max_duration": "00:10:00", "min_interval": "00:10:00", "max_interval": "02:00:00" } }, { "type": "CompleteTutorial", "config": { "enabled": false, "// set a name": "", "nickname": "", "// 0 = No Team, 1 = Blue, 2 = Red, 3 = Yellow": "", "team": 0 } }, { "type": "CollectLevelUpReward", "config": { "collect_reward": true, "level_limit": -1 } }, { "type": "BuddyPokemon", "config": { "enabled": true, "buddy_list": "dratini, magikarp", "best_in_family": true, "// candy_limit = 0 means no limit, so it will never change current buddy": { }, "candy_limit": 0, "candy_limit_absolute": 0, "// force_first_change = true will always change buddy at start removing current one": { }, "force_first_change": false, "buddy_change_wait_min": 3, "buddy_change_wait_max": 5, "min_interval": 120 } }, { "type": "IncubateEggs", "config": { "enabled": true, "infinite_longer_eggs_first": false, "infinite_random_eggs": false, "breakable_longer_eggs_first": true, "min_interval": 120, "infinite": [ 2, 5, 10 ], "breakable": [ 2, 5, 10 ] } }, { "type": "UpdateLiveStats", "config": { "enabled": false, "min_interval": 10, "stats": [ "username", "uptime", "stardust_earned", "xp_earned", "xp_per_hour", "stops_visited", "total_stardust" ], "terminal_log": true, "terminal_title": true } }, { "type": "UpdateLiveInventory", "config": { "enabled": false, "min_interval": 120, "show_all_multiple_lines": false, "items": [ "pokemon_bag", "space_info", "pokeballs", "greatballs", "ultraballs", "razzberries", "luckyegg" ] } }, { "type": "UpdateHashStats", "config": { "enabled": true, "min_interval": 60, "stats": [ "period", "remaining", "maximum", "expiration" ] } }, { "type": "ShowBestPokemon", "config": { "enabled": true, "min_interval": 60, "amount": 5, "order_by": "cp", "info_to_show": [ "cp", "ivcp", "dps", "hp" ] } }, { "type": "TransferPokemon", "config": { "enabled": true, "min_free_slot": 5, "transfer_wait_min": 3, "transfer_wait_max": 5 } }, { "type": "NicknamePokemon", "config": { "enabled": false, "nickname_above_iv": 0.9, "nickname_template": "{iv_pct}-{iv_ads}", "nickname_wait_min": 3, "nickname_wait_max": 5 } }, { "type": "EvolvePokemon", "config": { "enabled": false, "log_interval": 120, "// evolve only pidgey and drowzee": "", "// evolve_list": [ "pidgey, drowzee", "all" ], "// donot_evolve_list": [ "none", "pidgey, drowzee" ], "// evolve all but pidgey and drowzee": "", "evolve_list": "all", "donot_evolve_list": "none", "first_evolve_by": "cp", "evolve_above_cp": 500, "evolve_above_iv": 0.8, "logic": "or", "min_evolve_speed": 25, "max_evolve_speed": 30, "min_pokemon_to_be_evolved": 1, "use_lucky_egg": false } }, { "type": "UseIncense", "config": { "use_incense": false, "use_order": [ "ordinary" ] } }, { "type": "RecycleItems", "config": { "enabled": true, "min_empty_space": 15, "max_balls_keep": 150, "max_potions_keep": 50, "max_berries_keep": 70, "max_revives_keep": 70, "item_filter": { "Pokeball": { "keep": 100 }, "Potion": { "keep": 10 }, "Super Potion": { "keep": 20 }, "Hyper Potion": { "keep": 30 }, "Revive": { "keep": 30 }, "Razz Berry": { "keep": 100 } }, "recycle_wait_min": 3, "recycle_wait_max": 5, "recycle_force": true, "recycle_force_min": "00:01:00", "recycle_force_max": "00:05:00" } }, { "type": "CatchLimiter", "config": { "enabled": false, "min_balls": 20, "duration": 15 } }, { "type": "Sniper", "config": { "enabled": false, "mode": "social", "bullets": 1, "homing_shots": true, "cooldown_enabled": false, "loiter_after_snipe": false, "special_iv": 100, "order": [ "missing", "vip", "priority" ], "teleport_back_to_last_location": false, "sources": [ { "enabled": false, "url": "http://localhost:5000/raw_data", "timeout": 3, "key": "pokemons", "mappings": { "id": { "param": "pokemon_id" }, "name": { "param": "pokemon_name" }, "latitude": { "param": "latitude" }, "longitude": { "param": "longitude" }, "expiration": { "param": "disappear_time", "format": "milliseconds" } } }, { "enabled": false, "url": "https://pokewatchers.com/grab/", "timeout": 10, "mappings": { "iv": { "param": "iv" }, "id": { "param": "pid" }, "name": { "param": "pokemon" }, "latitude": { "param": "cords" }, "longitude": { "param": "cords" }, "expiration": { "param": "timeend", "format": "seconds" } } }, { "enabled": false, "url": "http://pokesnipers.com/api/v1/pokemon.json", "timeout": 10, "key": "results", "mappings": { "iv": { "param": "iv" }, "name": { "param": "name" }, "latitude": { "param": "coords" }, "longitude": { "param": "coords" }, "expiration": { "param": "until", "format": "utc" } } } ], "catch": { "Snorlax": 1000, "Dragonite": 1000, "Growlithe": 600, "Clefairy": 500, "Kabuto": 500, "Dratini": 500, "Dragonair": 500, "Mr. Mime": 500, "Magmar": 500, "Electabuzz": 500, "Tangela": 500, "Tauros": 500, "Primeape": 500, "Chansey": 500, "Pidgey": 100, "Caterpie": 100, "Weedle": 100 } } }, { "type": "CatchPokemon", "config": { "enabled": true, "catch_visible_pokemon": true, "catch_lured_pokemon": true, "catch_incensed_pokemon": true, "min_ultraball_to_keep": 5, "berry_threshold": 0.35, "golden_razz_threshold": 0.2, "golden_razz_to_keep": 30, "use_golden_razz_on_vip_only": true, "use_pinap_on_vip": false, "pinap_on_level_below": 0, "pinap_operator": "or", "pinap_ignore_threshold": false, "smart_pinap_enabled": true, "smart_pinap_threshold": 0.85, "smart_pinap_to_keep": 3, "vip_berry_threshold": 0.9, "treat_unseen_as_vip": true, "daily_catch_limit": 500, "exit_on_limit_reached": false, "vanish_settings": { "consecutive_vanish_limit": 10, "rest_duration_min": "02:00:00", "rest_duration_max": "04:00:00" }, "catch_throw_parameters": { "excellent_rate": 0.1, "great_rate": 0.5, "nice_rate": 0.3, "normal_rate": 0.1, "spin_success_rate": 0.6, "hit_rate": 0.75 }, "catch_simulation": { "flee_count": 3, "flee_duration": 2, "catch_wait_min": 3, "catch_wait_max": 6, "berry_wait_min": 3, "berry_wait_max": 5, "changeball_wait_min": 3, "changeball_wait_max": 5, "newtodex_wait_min": 20, "newtodex_wait_max": 30 } } }, { "type": "SpinFort", "config": { "enabled": true, "spin_wait_min": 3, "spin_wait_max": 5, "daily_spin_limit": 1900, "use_lure": false } }, { "type": "UpdateWebInventory", "config": { "enabled": true } }, { "type": "GymPokemon", "config": { "enabled": false, "order_by": "cp", "min_interval": 360, "min_recheck": 30, "max_recheck": 120, "chain_fill_gyms": true, "ignore_max_cp_pokemon": [ "Blissey" ], "never_place": [ "Machamp" ], "leave_at_least_spots": 1, "take_at_most": 10, "pick_random_pokemon": true, "can_be_disabled_by_catch_limter": false } }, { "type": "MoveToFort", "config": { "enabled": true, "lure_attraction": true, "lure_max_distance": 2000, "walker": "StepWalker", "log_interval": 5 } }, { "type": "FollowSpiral", "config": { "enabled": true, "diameter": 4, "step_size": 70 } } ], "map_object_cache_time": 5, "forts": { "avoid_circles": true, "max_circle_size": 50, "cache_recent_forts": true }, "pokemon_bag": { "// if 'show_at_start' is true, it will log all the pokemons in the bag (not eggs) at bot start": { }, "show_at_start": true, "// if 'show_count' is true, it will show the amount of each pokemon (minimum 1)": { }, "show_count": false, "// if 'show_candies' is true, it will show the amount of candies for each pokemon": { }, "show_candies": false, "// 'pokemon_info' parameter define which info to show for each pokemon": { }, "// the available options are": { }, "// ['cp', 'iv_ads', 'iv_pct', 'ivcp', 'ncp', 'level', 'hp', 'moveset', 'dps']": { }, "pokemon_info": [ "cp", "iv_pct" ] }, "walk_max": 4.16, "walk_min": 2.16, "alt_min": 500, "alt_max": 1000, "sleep_schedule": { "enabled": true, "enable_reminder": false, "reminder_interval": 600, "entries": [ { "enabled": true, "time": "12:00", "duration": "5:30", "time_random_offset": "00:30", "duration_random_offset": "00:30", "wake_up_at_location": "" }, { "enabled": true, "time": "17:45", "duration": "3:00", "time_random_offset": "01:00", "duration_random_offset": "00:30", "wake_up_at_location": "" } ] }, "gps_default_altitude": 8, "replicate_gps_xy_noise": false, "replicate_gps_z_noise": false, "gps_xy_noise_range": 0.000125, "gps_z_noise_range": 12.5, "debug": false, "test": false, "walker_limit_output": false, "health_record": true, "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, "logging": { "color": true, "show_datetime": true, "show_process_name": true, "show_log_level": true, "show_thread_name": false }, "catch": { "any": { "candy_threshold": 400, "catch_above_cp": 0, "catch_above_iv": 0, "logic": "or" }, "// Example of always catching Rattata:": { }, "// Rattata": { "always_catch": true }, "// Example of catching only Diglett and Horsea needed for Bubblestrat; you might want to also configure sniping (MoveToMap - helps you get hold of neede pokemons faster) and disable SpinFort (or you will advance past level 2 which will make it impossible to catch level-1 pokemons)": { }, "Diglett": { "candy_threshold": 1, "catch_below_cp": 11, "catch_above_iv": 0, "logic": "and", "fast_attack": [ "Scratch", "Mud Slap" ] }, "Horsea": { "candy_threshold": 1, "catch_below_cp": 11, "catch_above_iv": 0, "logic": "and", "fast_attack": [ "Bubble" ] }, "// Example of catching Vaporeon only with Water Gun and Hydro Pump": { }, "Vaporeon": { "catch_above_iv": 0.99, "charged_attack": [ "Hydro Pump" ], "fast_attack": [ "Water Gun" ] } }, "release": { "any": { "release_below_cp": 0, "release_below_iv": 0, "release_below_ivcp": 0, "logic": "or" }, "// Example of always releasing Rattata:": { }, "// Rattata": { "always_release": true }, "// Example of keeping 3 stronger (based on CP) Pidgey:": { }, "// Pidgey": { "keep_best_cp": 3 }, "// Example of keeping 2 best (based on IV) Zubat:": { }, "// Zubat": [ { "keep_best_iv": 2 }, { "keep_best_cp": 2, "keep_best_iv": 3 }, { "keep_best_custom": "iv, cp, hp_max", "amount": 2 } ], "// Keep no more than 3 best IV pokemon for every pokemon type": { }, "// any": [ { "keep_best_iv": 3 }, { "keep_best_ivcp": 3 } ], "// Keep no more than 3 best IVCP pokemon for every pokemon type": { }, "// Discard all pokemon in bag except 100 pokemon with best CP": { }, "// all": { "keep_best_cp": 100 }, "// Example of keeping the 2 strongest (based on CP) and 3 best (based on IV) Zubat:": { }, "// Example of custom order of static criterion": { } }, "vips": { "Any pokemon put here directly force to use Berry & Best Ball to capture, to secure the capture rate": { }, "any": { "catch_above_cp": 1200, "catch_above_iv": 0.9, "logic": "or" }, "Lapras": { }, "Moltres": { }, "Zapdos": { }, "Articuno": { }, "// S-Tier pokemons (if pokemon can be evolved into tier, list the representative)": { }, "Mewtwo": { }, "Dragonite": { }, "Snorlax": { }, "// Mew evolves to Mewtwo": { }, "Mew": { }, "Arcanine": { }, "Vaporeon": { }, "Gyarados": { }, "Exeggutor": { }, "Muk": { }, "Weezing": { }, "Flareon": { } }, "websocket": { "start_embedded_server": true, "server_url": "127.0.0.1:4000" } }

    Output when issue occurred

    => ERROR [ 3/15] RUN apk -U --no-cache add python py-pip tzdata && rm -rf /var/cache/apk/* && find / -name '.pyc' -o -name '.pyo' | xargs -rn1 2.7s

    Steps to Reproduce

    Ran docker build -t pokemongo-bot .

    Other Information

    OS: MacOS also occurs in Linux Branch:

    Git Commit: 5e80f20760f32478a84a8f0ced7ca24cdf41fe03 Python Version: Python 2.7.18 Any other relevant files/configs (eg: path files)

    opened by a-bianucci 1
  • Bump numpy from 1.11.0 to 1.22.0

    Bump numpy from 1.11.0 to 1.22.0

    Bumps numpy from 1.11.0 to 1.22.0.

    Release notes

    Sourced from numpy's releases.

    v1.22.0

    NumPy 1.22.0 Release Notes

    NumPy 1.22.0 is a big release featuring the work of 153 contributors spread over 609 pull requests. There have been many improvements, highlights are:

    • Annotations of the main namespace are essentially complete. Upstream is a moving target, so there will likely be further improvements, but the major work is done. This is probably the most user visible enhancement in this release.
    • A preliminary version of the proposed Array-API is provided. This is a step in creating a standard collection of functions that can be used across application such as CuPy and JAX.
    • NumPy now has a DLPack backend. DLPack provides a common interchange format for array (tensor) data.
    • New methods for quantile, percentile, and related functions. The new methods provide a complete set of the methods commonly found in the literature.
    • A new configurable allocator for use by downstream projects.

    These are in addition to the ongoing work to provide SIMD support for commonly used functions, improvements to F2PY, and better documentation.

    The Python versions supported in this release are 3.8-3.10, Python 3.7 has been dropped. Note that 32 bit wheels are only provided for Python 3.8 and 3.9 on Windows, all other wheels are 64 bits on account of Ubuntu, Fedora, and other Linux distributions dropping 32 bit support. All 64 bit wheels are also linked with 64 bit integer OpenBLAS, which should fix the occasional problems encountered by folks using truly huge arrays.

    Expired deprecations

    Deprecated numeric style dtype strings have been removed

    Using the strings "Bytes0", "Datetime64", "Str0", "Uint32", and "Uint64" as a dtype will now raise a TypeError.

    (gh-19539)

    Expired deprecations for loads, ndfromtxt, and mafromtxt in npyio

    numpy.loads was deprecated in v1.15, with the recommendation that users use pickle.loads instead. ndfromtxt and mafromtxt were both deprecated in v1.17 - users should use numpy.genfromtxt instead with the appropriate value for the usemask parameter.

    (gh-19615)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Archiving repository to avoid confusion

    Archiving repository to avoid confusion

    Since this project isn't actively maintained anymore etc. how about archiving the bot to avoid confusion from others who still think this repo keeps being updated?

    opened by NobodyFAH 0
  • Bump urllib3 from 1.18 to 1.26.5

    Bump urllib3 from 1.18 to 1.26.5

    Bumps urllib3 from 1.18 to 1.26.5.

    Release notes

    Sourced from urllib3's releases.

    1.26.5

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed deprecation warnings emitted in Python 3.10.
    • Updated vendored six library to 1.16.0.
    • Improved performance of URL parser when splitting the authority component.

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.4

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Changed behavior of the default SSLContext when connecting to HTTPS proxy during HTTPS requests. The default SSLContext now sets check_hostname=True.

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.3

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed bytes and string comparison issue with headers (Pull #2141)

    • Changed ProxySchemeUnknown error message to be more actionable if the user supplies a proxy URL without a scheme (Pull #2107)

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.2

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed an issue where wrap_socket and CERT_REQUIRED wouldn't be imported properly on Python 2.7.8 and earlier (Pull #2052)

    1.26.1

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed an issue where two User-Agent headers would be sent if a User-Agent header key is passed as bytes (Pull #2047)

    1.26.0

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Added support for HTTPS proxies contacting HTTPS servers (Pull #1923, Pull #1806)

    • Deprecated negotiating TLSv1 and TLSv1.1 by default. Users that still wish to use TLS earlier than 1.2 without a deprecation warning should opt-in explicitly by setting ssl_version=ssl.PROTOCOL_TLSv1_1 (Pull #2002) Starting in urllib3 v2.0: Connections that receive a DeprecationWarning will fail

    • Deprecated Retry options Retry.DEFAULT_METHOD_WHITELIST, Retry.DEFAULT_REDIRECT_HEADERS_BLACKLIST and Retry(method_whitelist=...) in favor of Retry.DEFAULT_ALLOWED_METHODS, Retry.DEFAULT_REMOVE_HEADERS_ON_REDIRECT, and Retry(allowed_methods=...) (Pull #2000) Starting in urllib3 v2.0: Deprecated options will be removed

    ... (truncated)

    Changelog

    Sourced from urllib3's changelog.

    1.26.5 (2021-05-26)

    • Fixed deprecation warnings emitted in Python 3.10.
    • Updated vendored six library to 1.16.0.
    • Improved performance of URL parser when splitting the authority component.

    1.26.4 (2021-03-15)

    • Changed behavior of the default SSLContext when connecting to HTTPS proxy during HTTPS requests. The default SSLContext now sets check_hostname=True.

    1.26.3 (2021-01-26)

    • Fixed bytes and string comparison issue with headers (Pull #2141)

    • Changed ProxySchemeUnknown error message to be more actionable if the user supplies a proxy URL without a scheme. (Pull #2107)

    1.26.2 (2020-11-12)

    • Fixed an issue where wrap_socket and CERT_REQUIRED wouldn't be imported properly on Python 2.7.8 and earlier (Pull #2052)

    1.26.1 (2020-11-11)

    • Fixed an issue where two User-Agent headers would be sent if a User-Agent header key is passed as bytes (Pull #2047)

    1.26.0 (2020-11-10)

    • NOTE: urllib3 v2.0 will drop support for Python 2. Read more in the v2.0 Roadmap <https://urllib3.readthedocs.io/en/latest/v2-roadmap.html>_.

    • Added support for HTTPS proxies contacting HTTPS servers (Pull #1923, Pull #1806)

    • Deprecated negotiating TLSv1 and TLSv1.1 by default. Users that still wish to use TLS earlier than 1.2 without a deprecation warning

    ... (truncated)

    Commits
    • d161647 Release 1.26.5
    • 2d4a3fe Improve performance of sub-authority splitting in URL
    • 2698537 Update vendored six to 1.16.0
    • 07bed79 Fix deprecation warnings for Python 3.10 ssl module
    • d725a9b Add Python 3.10 to GitHub Actions
    • 339ad34 Use pytest==6.2.4 on Python 3.10+
    • f271c9c Apply latest Black formatting
    • 1884878 [1.26] Properly proxy EOF on the SSLTransport test suite
    • a891304 Release 1.26.4
    • 8d65ea1 Merge pull request from GHSA-5phf-pp7p-vc2r
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(0.67.2)
A Python API for Connected 2

connected API for Connected 2 api for the { connected 2 } programmer : api report api follow api check username api forget password api Search api cha

2 Jun 05, 2022
A Discord bot that generates inspirational quotes & motivating messages whenever a user is sad

Encourage bot is a discord bot that allows users to randomly get Inspirational quotes messages and gives motivational encouragements whenever someone says that he's sad/depressed.

1 Nov 25, 2021
Discord bot that generates boba drinks. Submission for sunhacks 2021

boba-bot Team Poggies' submission for Sunhacks 2021. Find our project page on Devpost, and a video demonstration can be found on YouTube. Commands $he

Joshua Tenorio 3 Nov 02, 2022
Mandatory join to channel using pyTelegramBotAPI

Running set your bot token to config.py set channel username to config.py set channel url to config.py $ python join.py Attention Bot must be administ

Abdulatif 6 Oct 08, 2022
The easiest way to deploy this Bot

How To Host The easiest way to deploy this Bot Update Channe

Isekai Reszz 1 Jan 23, 2022
Cool Discord bot for you

BountyBot Баунти – современный бот созданный с целью сделать ваш сервер лучше! В кратце В нем присутствует множество основных и интересных функций, та

Leestarb Original 1 Nov 22, 2021
A simple python script for rclone. Use multiple Google Service Accounts and cycle through them.

About GSAclone GSAclone is a simple python script for rclone, written with the purpose of using multiple Google service accounts on Google Drive and "

Shiro39 6 Feb 25, 2022
Automation application was made by me using Google, Sheet and Slack APIs with Python.

README This application is used to transfer the data in the xlsx document we have to the Google Drive environment and calculate the "total budget" wit

3 Apr 12, 2022
Amazon AWS Web Tool (view only)

Amazon AWS Web Tool (AAWT) discontinued Features Cloudfront (simple) EC2 (With Charts and Prices) EC2 Reserved EBS ELB (With Charts) Obs:. only classi

Carlos Augusto Malucelli 9 Nov 07, 2022
PerrOS - The operating system for your discord server.

PerrOS PerrOS is a Opensource Discord Bot to do it all! Installation Use the package manager pip to install the python3 requirements. pip3 install -r

Webshort 2 Jun 20, 2022
Telegram Bot to save Posts or Files that can be Accessed via Special Links

OKAERI-FILE Bot Telegram untuk menyimpan Posting atau File yang dapat Diakses melalui Link Khusus. Jika Anda memerlukan tambahan module lagi dalam rep

Wahyusaputra 5 Aug 04, 2022
Reverse engineered connection to the TradingView ticker in Python

Tradingview-ticker Reverse engineered connection to the TradingView ticker in Python. Makes a websocket connection to the Tradeview website and receiv

Aaron 20 Dec 02, 2022
An API or getting Optifine VersionsList/Version/Download-URL.

Optifine-API An API for getting Optifine VersionsList/Versions/Download-URL. Table of contents Get Versions List Get Specify Versions Download Optifin

2 Dec 04, 2022
Auto Moderation is a powerfull moderation bot

Auto Moderation.py Auto Moderation a powerful Moderation Discord Bot 🎭 Futures Moderation Auto Moderation 🚀 Installation git clone https://github.co

G∙MAX 2 Apr 02, 2022
Fetch tracking numbers of Amazon orders, for the ease of the logistics.

Amazon-Tracking-Number Fetch tracking numbers of Amazon orders, for the ease of the logistics. Read Me First (How to use this code): Get Amazon "Items

Tony Yao 1 Nov 02, 2021
An attempt to escape the horrible JIRA editor.

An attempt to escape the horrible JIRA editor. jira_filter.py is a pandoc filter that cleans up some of JIRA's html so that it can be converted to Mar

Stefan Matting 2 Feb 10, 2022
YouTube-Discord-Bot - Discord Bot to Search YouTube

YouTube Bot Info YouTube Bot is a discord bot where you can search for anything

Riceblades11 10 Mar 05, 2022
📈 A Discord bot for displaying the download stats of a repository made with Python, the Hikari API and PostgreSQL.

📈 axyl-stats axyl-stats is a Discord bot made with Python (with the Hikari API wrapper) and PostgreSQL, used as a download counter for a GitHub repo.

Angelo-F 2 May 14, 2022
Um simples bot público para todos usarem no discord!

Discord Bot - Código Público Características: Linguagem de Programação: Python Quantidade de comandos: 17 Comandos: Prefixo do bot: O prefixo desse bo

Kevin 3 Dec 31, 2021
使用appium进行抖音粉丝的自动化获取

DYfans 使用appium进行抖音粉丝的自动化获取 工具: appium appium inspector Fiddler 夜神模拟器或者安卓手机 mitmdump mitmproxy 推荐使用安卓5.0夜神模拟器 库: appium selenium json 环境: jdk 安卓sdk 安卓

kaba 0 Mar 25, 2022