Skip to main content

FFXIV weather forecast library for Python applications.

Project description

ffxivweather-py

FFXIV weather forecast library for Python applications.

Credit to Garland Tools for weather data, and XIVAPI and FFCafe for game data.

Installation

pip install ffxivweather

Documentation

This package only exposes two methods:

def get_forecast(place_name: str=None,
                terri_type_id: int=None,
                terri_type: str=None,
                count: int=1,
                second_increment: float=WEATHER_PERIOD,
                initial_offset: float=0 * MINUTES,
                lang: LangKind=LangKind.EN) -> list:
"""Returns the next count forecast entries for the provided territory, at a
separation defined by second_increment and from the provided initial offset in seconds.
Forecast entries are tuples in which the first item is the weather, and the second item
is the start time of that weather."""
def get_current_weather(place_name: str=None,
                        terri_type_id: int=None,
                        terri_type: str=None,
                        initial_offset: float=0 * MINUTES,
                        lang: LangKind=LangKind.EN):
"""Returns the current weather and its start time, relative to the provided
offset in seconds, for the specified territory type."""

Example

Code:

import datetime
import ffxivweather

zone = "Eureka Pyros"
forecast = ffxivweather.forecaster.get_forecast(place_name=zone, count=15)

print("Weather for " + zone + ":")
print("|\tWeather\t\t|\tTime\t|")
print("+-----------------------+---------------+")
for weather, start_time in forecast:
    fmt1 = weather["name_en"]
    if (len(weather["name_en"]) < 8):
        fmt1 += "\t"
    fmt2 = str(round((start_time - datetime.datetime.utcnow()).total_seconds() / 60))
    print("|\t" + fmt1 + "\t|\t" + fmt2 + "m\t|")

Output:

Weather for Eureka Pyros:
|       Weather         |       Time    |
+-----------------------+---------------+
|       Snow            |       -13m    |
|       Heat Waves      |       10m     |
|       Thunder         |       33m     |
|       Heat Waves      |       57m     |
|       Fair Skies      |       80m     |
|       Umbral Wind     |       103m    |
|       Snow            |       127m    |
|       Umbral Wind     |       150m    |
|       Thunder         |       173m    |
|       Thunder         |       197m    |
|       Umbral Wind     |       220m    |
|       Snow            |       243m    |
|       Heat Waves      |       267m    |
|       Blizzards       |       290m    |
|       Thunder         |       313m    |

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ffxivweather-1.0.4.tar.gz (37.5 kB view details)

Uploaded Source

Built Distribution

ffxivweather-1.0.4-py3-none-any.whl (38.2 kB view details)

Uploaded Python 3

File details

Details for the file ffxivweather-1.0.4.tar.gz.

File metadata

  • Download URL: ffxivweather-1.0.4.tar.gz
  • Upload date:
  • Size: 37.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for ffxivweather-1.0.4.tar.gz
Algorithm Hash digest
SHA256 ff187953008ac11d0c554c821f5c55c42e2bd14ed4da1de5db3289d878fd9391
MD5 0b67471b2c2bbee29577ef4384d60468
BLAKE2b-256 788fa1559848a2afe5ca165305c51a615348264ff2ab06e067291b404a3fad27

See more details on using hashes here.

File details

Details for the file ffxivweather-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: ffxivweather-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 38.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for ffxivweather-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8f80fc7423721beb55a3556f09f42a36d178844f088041174ede7e1ccabc48a4
MD5 8b001a18c4feb474e31e8e05fed760d9
BLAKE2b-256 5194a6b84d52bc22e241fc4369f1f8fe2269c9ad991b4e3bdda0945ea8acc847

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page