Python client for the FFLogs v2 API
Project description
fflogsapi
fflogsapi is a lazy Python 3 client for fflogs' v2 API with query caching functionality.
Features
- Retrieve information from fflogs' v2 GraphQL API
- Lazy evaluation
- Queries for data are not executed until it is explicitly needed
- Query caching
- Requesting the same data twice will instead fetch the result from cache
- Customizable cache lifetime and options to ignore cached results
Example usage
from config import CLIENT_ID, CLIENT_SECRET
from fflogsapi.client import FFLogsClient
client = FFLogsClient(CLIENT_ID, CLIENT_SECRET)
report = client.get_report('rGARYmQwTKbahXz9')
for fight in report:
print(f'Fight #{fight.fight_id}:', fight.name(), f'- Kill: {fight.is_kill()}')
pot_table = fight.fight_table(filters={'sourceAurasPresent': 'Medicated'})
potted_damage = 0
for damage in pot_table['damageDone']:
potted_damage += damage['total']
print(f'Damage done under pots: {potted_damage}')
if not fight.is_kill():
print(f'Percentage reached: {fight.percentage()}')
client.close()
client.save_cache()
from config import CLIENT_ID, CLIENT_SECRET
from fflogsapi.client import FFLogsClient
client = FFLogsClient(CLIENT_ID, CLIENT_SECRET)
for page in client.report_pages(filters={ 'guildID': 80551 }):
print(f'Reports in page: {page.count()}')
for report in page:
print(report.title(), f'Duration: {report.duration()}')
client.close()
client.save_cache()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fflogsapi-0.3.4.tar.gz
(30.5 kB
view hashes)
Built Distribution
fflogsapi-0.3.4-py3-none-any.whl
(39.4 kB
view hashes)
Close
Hashes for fflogsapi-0.3.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 752df6cd7f91fa9ac0cef5c41eade92985a30ab6b338f609ee89a70622eaeb35 |
|
MD5 | 1cc0396c18d3b075b0a73b318a2a15c9 |
|
BLAKE2b-256 | ac22f503b87bb7694b1e7177be01ae40da693102b3ecfac3349dae242f58698b |