本文整理汇总了Python中stepper.Stepper类的典型用法代码示例。如果您正苦于以下问题:Python Stepper类的具体用法?Python Stepper怎么用?Python Stepper使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Stepper类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: start
def start(self):
self._setup_logging()
self._setup_api()
if self.config.stats:
## exit early and just show stats
print '[ stats mode, exiting ... ]'
exit()
self.stepper = Stepper(self)
random.seed()
开发者ID:yuanchenyang,项目名称:PokemonGo-Bot,代码行数:9,代码来源:bot.py
示例2: testStepper
def testStepper():
print '=== Stepper Test ==='
print 'to do: Stepper PINs to output'
stepper = Stepper()
stepper.turn(45,100)
stepper.turnAsync(-45,50)
while(not stepper.isMovementFinished()):
time.sleep(0.02)
开发者ID:mattvenn,项目名称:v2,代码行数:8,代码来源:raspberryTest.py
示例3: start
def start(self):
self._setup_logging()
self._setup_api()
self.stepper = Stepper(self)
random.seed()
开发者ID:ctfhacker,项目名称:PokemonGo-Bot,代码行数:5,代码来源:__init__.py
示例4: PokemonGoBot
class PokemonGoBot(object):
def __init__(self, config):
self.config = config
self.pokemon_list = json.load(open('data/pokemon.json'))
self.item_list = json.load(open('data/items.json'))
def start(self):
self._setup_logging()
self._setup_api()
self.stepper = Stepper(self)
random.seed()
def take_step(self):
self.stepper.take_step()
def work_on_cell(self, cell, position, include_fort_on_path):
if self.config.evolve_all:
# Run evolve all once. Flip the bit.
print('[#] Attempting to evolve all pokemons ...')
worker = EvolveAllWorker(self)
worker.work()
self.config.evolve_all = []
self._filter_ignored_pokemons(cell)
if (self.config.mode == "all" or self.config.mode ==
"poke") and 'catchable_pokemons' in cell and len(cell[
'catchable_pokemons']) > 0:
logger.log('[#] Something rustles nearby!')
# Sort all by distance from current pos- eventually this should
# build graph & A* it
cell['catchable_pokemons'].sort(
key=
lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude']))
user_web_catchable = 'web/catchable-%s.json' % (self.config.username)
for pokemon in cell['catchable_pokemons']:
with open(user_web_catchable, 'w') as outfile:
json.dump(pokemon, outfile)
if self.catch_pokemon(pokemon) == PokemonCatchWorker.NO_POKEBALLS:
break
with open(user_web_catchable, 'w') as outfile:
json.dump({}, outfile)
if (self.config.mode == "all" or self.config.mode == "poke"
) and 'wild_pokemons' in cell and len(cell['wild_pokemons']) > 0:
# Sort all by distance from current pos- eventually this should
# build graph & A* it
cell['wild_pokemons'].sort(
key=
lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude']))
for pokemon in cell['wild_pokemons']:
if self.catch_pokemon(pokemon) == PokemonCatchWorker.NO_POKEBALLS:
break
if (self.config.mode == "all" or
self.config.mode == "farm") and include_fort_on_path:
if 'forts' in cell:
# Only include those with a lat/long
forts = [fort
for fort in cell['forts']
if 'latitude' in fort and 'type' in fort]
gyms = [gym for gym in cell['forts'] if 'gym_points' in gym]
# Sort all by distance from current pos- eventually this should
# build graph & A* it
forts.sort(key=lambda x: distance(self.position[
0], self.position[1], x['latitude'], x['longitude']))
for fort in forts:
worker = MoveToFortWorker(fort, self)
worker.work()
worker = SeenFortWorker(fort, self)
hack_chain = worker.work()
if hack_chain > 10:
#print('need a rest')
break
def _setup_logging(self):
self.log = logging.getLogger(__name__)
# log settings
# log format
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
if self.config.debug:
logging.getLogger("requests").setLevel(logging.DEBUG)
logging.getLogger("pgoapi").setLevel(logging.DEBUG)
logging.getLogger("rpc_api").setLevel(logging.DEBUG)
else:
logging.getLogger("requests").setLevel(logging.ERROR)
logging.getLogger("pgoapi").setLevel(logging.ERROR)
logging.getLogger("rpc_api").setLevel(logging.ERROR)
def _setup_api(self):
# instantiate pgoapi
self.api = PGoApi()
# check if the release_config file exists
#.........这里部分代码省略.........
开发者ID:ctfhacker,项目名称:PokemonGo-Bot,代码行数:101,代码来源:__init__.py
示例5: PokemonGoBot
class PokemonGoBot(object):
def __init__(self, config):
self.config = config
self.pokemon_list=json.load(open('pokemon.json'))
self.item_list=json.load(open('items.json'))
def start(self):
self._setup_logging()
self._setup_api()
self.stepper = Stepper(self)
random.seed()
def take_step(self):
self.stepper.take_step()
def work_on_cell(self, cell, position):
if 'catchable_pokemons' in cell:
print '[#] Something rustles nearby!'
for pokemon in cell['catchable_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
if 'wild_pokemons' in cell:
for pokemon in cell['wild_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
if self.config.spinstop:
if 'forts' in cell:
# Only include those with a lat/long
forts = [fort for fort in cell['forts'] if 'latitude' in fort and 'type' in fort]
# Sort all by distance from current pos- eventually this should build graph & A* it
forts.sort(key=lambda x: SeenFortWorker.geocalc(self.position[0], self.position[1], fort['latitude'], fort['longitude']))
for fort in cell['forts']:
worker = SeenFortWorker(fort, self)
hack_chain = worker.work()
if hack_chain > 10:
print('need a rest')
break
def _setup_logging(self):
self.log = logging.getLogger(__name__)
# log settings
# log format
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
# log level for http request class
logging.getLogger("requests").setLevel(logging.WARNING)
# log level for main pgoapi class
logging.getLogger("pgoapi").setLevel(logging.INFO)
# log level for internal pgoapi class
logging.getLogger("rpc_api").setLevel(logging.INFO)
def _setup_api(self):
# instantiate pgoapi
self.api = PGoApi()
# provide player position on the earth
self._set_starting_position()
if not self.api.login(self.config.auth_service, self.config.username, self.config.password):
return
# chain subrequests (methods) into one RPC call
# get player profile call
# ----------------------
self.api.get_player()
response_dict = self.api.call()
#print('Response dictionary: \n\r{}'.format(json.dumps(response_dict, indent=2)))
currency_1="0"
currency_2="0"
player = response_dict['responses']['GET_PLAYER']['profile']
### @@@ TODO: Convert this to d/m/Y H:M:S
creation_date = datetime.datetime.fromtimestamp(player['creation_time'] / 1e3)
pokecoins = '0'
stardust = '0'
if 'amount' in player['currency'][0]:
pokecoins = player['currency'][0]['amount']
if 'amount' in player['currency'][1]:
stardust = player['currency'][1]['amount']
try:
print('[#]')
print('[#] Username: ' + str(player['username']))
print('[#] Acccount Creation: ' + str(creation_date))
print('[#] Bag Storage: ' + str(self.getInventoryCount('item')) + '/' + str(player['item_storage']))
print('[#] Pokemon Storage: ' + str(self.getInventoryCount('pokemon')) + '/' + str(player['poke_storage']))
print('[#] Stardust: ' + str(stardust))
print('[#] Pokecoins: ' + str(pokecoins))
self.getPlayerInfo()
print('[#]')
except:
print('Exception during print player profile')
self.update_inventory();
def update_inventory(self):
#.........这里部分代码省略.........
开发者ID:yan7109,项目名称:PokemonGo-Bot,代码行数:101,代码来源:bot.py
示例6: PokemonGoBot
class PokemonGoBot(object):
def __init__(self, config):
self.config = config
self.pokemon_list=json.load(open('pokemon.json'))
self.item_list=json.load(open('items.json'))
self.noballs = False
def start(self):
self._setup_logging()
self._setup_api()
self.stepper = Stepper(self)
random.seed()
def take_step(self):
self.stepper.take_step()
def work_on_cell(self, cell, position):
if 'catchable_pokemons' in cell:
print '[#] Something rustles nearby!'
for pokemon in cell['catchable_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
if 'wild_pokemons' in cell:
for pokemon in cell['wild_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
# After [self.noballs = True] and first spining, check if 50 pokeballs was gathered, if so stop spining
if self.noballs and self.ballstock[1] >= 50:
print ('[#] Gathered 50/50 pokeballs, continue catching!')
self.noballs = False
elif self.noballs and self.ballstock[1] < 50:
print ('[#] Gathered ' + str(self.ballstock[1]) + '/50 pokeballs, continue farming...')
if self.config.spinstop or self.noballs:
if 'forts' in cell:
# Only include those with a lat/long
forts = [fort for fort in cell['forts'] if 'latitude' in fort and 'type' in fort]
# Sort all by distance from current pos- eventually this should build graph & A* it
forts.sort(key=lambda x: distance(self.position[0], self.position[1], fort['latitude'], fort['longitude']))
for fort in cell['forts']:
worker = SeenFortWorker(fort, self)
hack_chain = worker.work()
if hack_chain > 10:
print('[-] Anti-ban resting....')
break
def _setup_logging(self):
self.log = logging.getLogger(__name__)
# log settings
# log format
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
# log level for http request class
logging.getLogger("requests").setLevel(logging.WARNING)
# log level for main pgoapi class
logging.getLogger("pgoapi").setLevel(logging.INFO)
# log level for internal pgoapi class
logging.getLogger("rpc_api").setLevel(logging.INFO)
def _setup_api(self):
# instantiate pgoapi
self.api = PGoApi()
# provide player position on the earth
self._set_starting_position()
if not self.api.login(self.config.auth_service, self.config.username, self.config.password):
print('Login Error, server busy')
exit(0)
# chain subrequests (methods) into one RPC call
# get player inventory call
# ----------------------
self.api.get_player().get_inventory()
inventory_req = self.api.call()
inventory_dict = inventory_req['responses']['GET_INVENTORY']['inventory_delta']['inventory_items']
# get player balls stock
# ----------------------
balls_stock = {1:0,2:0,3:0,4:0}
for item in inventory_dict:
try:
if item['inventory_item_data']['item']['item'] == 1:
#print('Poke Ball count: ' + str(item['inventory_item_data']['item']['count']))
balls_stock[1] = item['inventory_item_data']['item']['count']
if item['inventory_item_data']['item']['item'] == 2:
#print('Great Ball count: ' + str(item['inventory_item_data']['item']['count']))
balls_stock[2] = item['inventory_item_data']['item']['count']
if item['inventory_item_data']['item']['item'] == 3:
#print('Ultra Ball count: ' + str(item['inventory_item_data']['item']['count']))
balls_stock[3] = item['inventory_item_data']['item']['count']
except:
continue
#.........这里部分代码省略.........
开发者ID:IAmTipsy,项目名称:PokemonGo-Bot,代码行数:101,代码来源:bot.py
示例7: PokemonGoBot
class PokemonGoBot(object):
def __init__(self, config):
self.config = config
self.pokemon_list = config.pokemons
self.item_list = config.items
def start(self):
self._setup_api()
self.stepper = Stepper(self)
random.seed()
def setup_logging(self, logger):
self._setup_logging()
self.logger = logger
def take_step(self):
self.stepper.take_step()
def work_on_cell(self, cell, position, include_fort_on_path):
if self.config.evolve_all:
# Run evolve all once. Flip the bit.
print('[#] Attempting to evolve all pokemons ...')
worker = EvolveAllWorker(self)
worker.work()
self.config.evolve_all = []
self._filter_ignored_pokemons(cell)
if (self.config.mode == "all" or self.config.mode ==
"poke") and 'catchable_pokemons' in cell and len(cell[
'catchable_pokemons']) > 0:
self.logger.info('[#] Something rustles nearby!')
# Sort all by distance from current pos- eventually this should
# build graph & A* it
cell['catchable_pokemons'].sort(
key=
lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude']))
if (self.config.mode == "all" or self.config.mode == "poke"
) and 'wild_pokemons' in cell and len(cell['wild_pokemons']) > 0:
# Sort all by distance from current pos- eventually this should
# build graph & A* it
cell['wild_pokemons'].sort(
key=
lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude']))
for pokemon in cell['wild_pokemons']:
if self.catch_pokemon(pokemon) == PokemonCatchWorker.NO_POKEBALLS:
break
if (self.config.mode == "all" or
self.config.mode == "farm") and include_fort_on_path:
if 'forts' in cell:
# Only include those with a lat/long
forts = [fort
for fort in cell['forts']
if 'latitude' in fort and 'type' in fort]
gyms = [gym for gym in cell['forts'] if 'gym_points' in gym]
# Sort all by distance from current pos- eventually this should
# build graph & A* it
forts.sort(key=lambda x: distance(self.position[
0], self.position[1], x['latitude'], x['longitude']))
for fort in forts:
worker = MoveToFortWorker(fort, self)
worker.work()
worker = SeenFortWorker(fort, self)
hack_chain = worker.work()
if hack_chain > 10:
#print('need a rest')
break
def _setup_logging(self):
# log settings
# log format
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
if self.config.debug:
logging.getLogger("requests").setLevel(logging.DEBUG)
logging.getLogger("pgoapi").setLevel(logging.DEBUG)
logging.getLogger("rpc_api").setLevel(logging.DEBUG)
else:
logging.getLogger("requests").setLevel(logging.ERROR)
logging.getLogger("pgoapi").setLevel(logging.ERROR)
logging.getLogger("rpc_api").setLevel(logging.ERROR)
def _setup_api(self):
# instantiate pgoapi
self.api = PGoApi()
# provide player position on the earth
self._set_starting_position()
if not self.api.login(self.config.auth_service,
str(self.config.username),
str(self.config.password)):
self.logger.error('Login Error, server busy', 'red')
exit(0)
#.........这里部分代码省略.........
开发者ID:kmcheung12,项目名称:flask-celery-pogo,代码行数:101,代码来源:__init__.py
示例8: PokemonGoBot
class PokemonGoBot(object):
def __init__(self, config):
self.config = config
self.pokemon_list=json.load(open('pokemon.json'))
self.item_list=json.load(open('items.json'))
def start(self):
self._setup_logging()
self._setup_api()
self.stepper = Stepper(self)
def take_step(self):
self.stepper.take_step()
def work_on_cell(self, cell, position):
if 'catchable_pokemons' in cell:
print 'Something rustles nearby!'
for pokemon in cell['catchable_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
if 'wild_pokemons' in cell:
for pokemon in cell['wild_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
if self.config.spinstop:
if 'forts' in cell:
# Only include those with a lat/long
forts = [fort for fort in cell['forts'] if 'latitude' in fort and 'type' in fort]
# Sort all by distance from current pos- eventually this should build graph & A* it
forts.sort(key=lambda x: SeenFortWorker.geocalc(self.position[0], self.position[1], fort['latitude'], fort['longitude']))
for fort in cell['forts']:
worker = SeenFortWorker(fort, self)
hack_chain = worker.work()
if hack_chain > 10:
print('need a rest')
break
def _setup_logging(self):
self.log = logging.getLogger(__name__)
# log settings
# log format
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
# log level for http request class
logging.getLogger("requests").setLevel(logging.WARNING)
# log level for main pgoapi class
logging.getLogger("pgoapi").setLevel(logging.INFO)
# log level for internal pgoapi class
logging.getLogger("rpc_api").setLevel(logging.INFO)
def _setup_api(self):
# instantiate pgoapi
self.api = PGoApi()
# provide player position on the earth
self._set_starting_position()
if not self.api.login(self.config.auth_service, self.config.username, self.config.password):
return
# chain subrequests (methods) into one RPC call
# get player profile call
# ----------------------
self.api.get_player()
response_dict = self.api.call()
#print('Response dictionary: \n\r{}'.format(json.dumps(response_dict, indent=2)))
currency_1="0"
currency_2="0"
try:
if 'amount' in response_dict['responses']['GET_PLAYER']['profile']['currency'][0]:
currency_1=response_dict['responses']['GET_PLAYER']['profile']['currency'][0]['amount']
if 'amount' in response_dict['responses']['GET_PLAYER']['profile']['currency'][1]:
currency_2=response_dict['responses']['GET_PLAYER']['profile']['currency'][1]['amount']
print 'Profile:'
print ' Username: ' + str(response_dict['responses']['GET_PLAYER']['profile']['username'])
print ' Bag size: ' + str(response_dict['responses']['GET_PLAYER']['profile']['item_storage'])
print ' Pokemon Storage Size: ' + str(response_dict['responses']['GET_PLAYER']['profile']['poke_storage'])
print ' Account Creation: ' + str(response_dict['responses']['GET_PLAYER']['profile']['creation_time'])
print ' Currency: '
print ' ' + str(response_dict['responses']['GET_PLAYER']['profile']['currency'][0]['type']) + ': ' + str(currency_1)
print ' ' + str(response_dict['responses']['GET_PLAYER']['profile']['currency'][1]['type']) + ': ' + str(currency_2)
except:
print('Exception during print player profile')
self.update_inventory();
def update_inventory(self):
self.api.get_inventory()
response = self.api.call()
self.inventory = list()
if 'responses' in response:
if 'GET_INVENTORY' in response['responses']:
if 'inventory_delta' in response['responses']['GET_INVENTORY']:
if 'inventory_items' in response['responses']['GET_INVENTORY']['inventory_delta']:
for item in response['responses']['GET_INVENTORY']['inventory_delta']['inventory_items']:
if not 'inventory_item_data' in item:
continue
if not 'item' in item['inventory_item_data']:
continue
#.........这里部分代码省略.........
开发者ID:NewyorkDev,项目名称:PokemonGo-Bot,代码行数:101,代码来源:bot.py
示例9: PokemonGoBot
class PokemonGoBot(object):
def __init__(self, config):
self.config = config
self.pokemon_list=json.load(open('pokemon.json'))
self.item_list=json.load(open('items.json'))
def start(self):
self._setup_logging()
self._setup_api()
self.stepper = Stepper(self)
def take_step(self):
self.stepper.set_position()
self.stepper.get_cells()
self.catch_pokemon()
if self.config.spinstop:
self.goto_pokestop()
else:
self.stepper.step()
def catch_pokemon(self):
self.stepper.get_cells()
surrounding_pokemon = ['catchable_pokemons', 'wild_pokemons']
print "seaching for pokemon"
for pokemon_type in surrounding_pokemon:
for cell in self.stepper.cells:
if pokemon_type in cell:
for pokemon in cell[pokemon_type]:
worker = PokemonCatchWorker(pokemon, self)
worker.work()
def goto_pokestop(self):
for cell in self.stepper.cells:
if 'forts' in cell:
for fort in cell['forts']:
if 'type' in fort:
worker = SeenFortWorker(cell, fort, self)
hack_chain = worker.work()
if hack_chain > 10:
print('need a rest')
break
def _setup_logging(self):
self.log = logging.getLogger(__name__)
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
logging.getLogger("requests").setLevel(logging.WARNING)
logging.getLogger("pgoapi").setLevel(logging.INFO)
logging.getLogger("rpc_api").setLevel(logging.INFO)
def _setup_api(self):
self.api = PGoApi()
self._set_starting_position()
if not self.api.login(self.config.auth_service, self.config.username, self.config.password):
return
# chain subrequests (methods) into one RPC call
# get player profile call
# ----------------------
self.api.get_player()
response_dict = self.api.call()
#print('Response dictionary: \n\r{}'.format(json.dumps(response_dict, indent=2)))
currency_1="0"
currency_2="0"
try:
if 'amount' in response_dict['responses']['GET_PLAYER']['profile']['currency'][0]:
currency_1=response_dict['responses']['GET_PLAYER']['profile']['currency'][0]['amount']
if 'amount' in response_dict['responses']['GET_PLAYER']['profile']['currency'][1]:
currency_2=response_dict['responses']['GET_PLAYER']['profile']['currency'][1]['amount']
print 'Profile:'
print ' Username: ' + str(response_dict['responses']['GET_PLAYER']['profile']['username'])
print ' Bag size: ' + str(response_dict['responses']['GET_PLAYER']['profile']['item_storage'])
print ' Pokemon Storage Size: ' + str(response_dict['responses']['GET_PLAYER']['profile']['poke_storage'])
print ' Account Creation: ' + str(response_dict['responses']['GET_PLAYER']['profile']['creation_time'])
print ' Currency: '
print ' ' + str(response_dict['responses']['GET_PLAYER']['profile']['currency'][0]['type']) + ': ' + str(currency_1)
print ' ' + str(response_dict['responses']['GET_PLAYER']['profile']['currency'][1]['type']) + ': ' + str(currency_2)
except:
print('Exception during print player profile')
def _set_starting_position(self):
self.position = self._get_pos_by_name(self.config.location)
self.api.set_position(*self.position)
print(self.position)
if self.config.test:
return
def _get_pos_by_name(self, location_name):
geolocator = GoogleV3(api_key=self.config.gmapkey)
loc = geolocator.geocode(location_name)
self.log.info('Your given location: %s', loc.address.encode('utf-8'))
self.log.info('lat/long/alt: %s %s %s', loc.latitude, loc.longitude, loc.altitude)
return (loc.latitude, loc.longitude, loc.altitude)
开发者ID:TSM-EVO,项目名称:PokemonGo-Bot,代码行数:99,代码来源:bot.py
示例10: start
def start(self):
self._setup_logging()
self._setup_api()
self._setup_ignored_pokemon()
self.stepper = Stepper(self)
random.seed()
开发者ID:Maximum-throwaway,项目名称:OpenPoGoBot,代码行数:6,代码来源:__init__.py
示例11: PokemonGoBot
class PokemonGoBot(object):
process_ignored_pokemon = False
def __init__(self, config):
self.config = config
self.item_list = json.load(open('data/items.json'))
self.pokemon_list = json.load(open('data/pokemon.json'))
def start(self):
self._setup_logging()
self._setup_api()
self._setup_ignored_pokemon()
self.stepper = Stepper(self)
random.seed()
def take_step(self):
self.stepper.take_step()
def work_on_cell(self, map_cells, position, include_fort_on_path):
self._remove_ignored_pokemon(map_cells)
if (self.config.mode == "all" or self.config.mode == "poke"):
self._work_on_catchable_pokemon(map_cells)
if (self.config.mode == "all" or self.config.mode == "poke"):
self._work_on_wild_pokemon(map_cells)
if (self.config.mode == "all" or self.config.mode == "farm") and include_fort_on_path:
self._work_on_forts(position, map_cells)
def _work_on_forts(self, position, map_cells):
forts = filtered_forts(position[0], position[1], sum([cell.get("forts", []) for cell in map_cells], []))
if forts:
worker = SeenFortWorker(forts[0], self)
hack_chain = worker.work()
def _remove_ignored_pokemon(self, map_cells):
if self.process_ignored_pokemon:
try:
for cell in map_cells:
for p in cell['wild_pokemons'][:]:
pokemon_id = p['pokemon_data']['pokemon_id']
pokemon_name = filter(lambda x: int(x.get('Number')) == pokemon_id, self.pokemon_list)[0]['Name']
if pokemon_name in ignores:
cell['wild_pokemons'].remove(p)
except KeyError:
pass
try:
for call in map_cells:
for p in cell['catchable_pokemons'][:]:
pokemon_id = p['pokemon_id']
pokemon_name = filter(lambda x: int(x.get('Number')) == pokemon_id, self.pokemon_list)[0]['Name']
if pokemon_name in ignores:
cell['catchable_pokemons'].remove(p)
except KeyError:
pass
def _work_on_catchable_pokemon(self, map_cells):
for cell in map_cells:
if 'catchable_pokemons' in cell and len(cell['catchable_pokemons']) > 0:
logger.log('[#] Something rustles nearby!')
# Sort all by distance from current pos- eventually this should
# build graph & A* it
cell['catchable_pokemons'].sort(
key=lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude']))
for pokemon in cell['catchable_pokemons']:
with open('web/catchable-%s.json' % (self.config.username), 'w') as outfile:
json.dump(pokemon, outfile)
worker = PokemonCatchWorker(pokemon, self)
if worker.work() == -1:
break
with open('web/catchable-%s.json' % (self.config.username), 'w') as outfile:
json.dump({}, outfile)
def _work_on_wild_pokemon(self, map_cells):
for cell in map_cells:
if 'wild_pokemons' in cell and len(cell['wild_pokemons']) > 0:
# Sort all by distance from current pos- eventually this should
# build graph & A* it
cell['wild_pokemons'].sort(
key=lambda x: distance(self.position[0], self.position[1], x['latitude'], x['longitude']))
for pokemon in cell['wild_pokemons']:
worker = PokemonCatchWorker(pokemon, self)
if worker.work() == -1:
break
def _setup_logging(self):
self.log = logging.getLogger(__name__)
# log settings
# log format
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s [%(module)10s] [%(levelname)5s] %(message)s')
if self.config.debug:
logging.getLogger("requests").setLevel(logging.DEBUG)
logging.getLogger("pgoapi").setLevel(logging.DEBUG)
#.........这里部分代码省略.........
开发者ID:Maximum-throwaway,项目名称:OpenPoGoBot,代码行数:101,代码来源:__init__.py
注:本文中的stepper.Stepper类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论