Skip to main content

Israel Meteorological Service unofficial python api wrapper

Project description

weatheril

Downloads DownloaFormatds DownloaFormatds Security Rating

weatheril is an unofficial IMS (Israel Meteorological Service) python API wrapper.

Features supported

  • Get current weather status.
  • Get Daily and Hourly forecast (5 days ahead).
  • Get Radar and Satellite images.

Components and Frameworks used in weatheril

Getting started

Use git to clone or you can also manually download the project repository just as shown below;

$ git clone https://github.com/t0mer/py-weatheril/
$ cd py-weatheril
py-weatheril $ python3 setup.py install 

Installing from PyPi

# For Windows 

pip install  --upgrade weatheril

#For Linux | MAC 

pip3 install --upgrade weatheril

Working with the API

weatheril can be configured to retrive forecast information for specific location. when initiating the library you must set the location id and language (Currently only he and en are supported)

from weatheril import *
weather = WeatherIL(21,"he")

In the above example i set Raanana as the location and Hebrew as language. Full locations list in the table below.

Id Location
1 Jerusalem
2 Tel Aviv - Yafo
3 Haifa
4 Rishon le Zion
5 Petah Tiqva
6 Ashdod
7 Netania
8 Beer Sheva
9 Bnei Brak
10 Holon
11 Ramat Gan
12 Asheqelon
13 Rehovot
14 Bat Yam
15 Bet Shemesh
16 Kfar Sava
17 Herzliya
18 Hadera
19 Modiin
20 Ramla
21 Raanana
22 Modiin Illit
23 Rahat
24 Hod Hasharon
25 Givatayim
26 Kiryat Ata
27 Nahariya
28 Beitar Illit
29 Um al-Fahm
30 Kiryat Gat
31 Eilat
32 Rosh Haayin
33 Afula
34 Nes-Ziona
35 Akko
36 Elad
37 Ramat Hasharon
38 Karmiel
39 Yavneh
40 Tiberias
41 Tayibe
42 Kiryat Motzkin
43 Shfaram
44 Nof Hagalil
45 Kiryat Yam
46 Kiryat Bialik
47 Kiryat Ono
48 Maale Adumim
49 Or Yehuda
50 Zefat
51 Netivot
52 Dimona
53 Tamra
54 Sakhnin
55 Yehud
56 Baka al-Gharbiya
57 Ofakim
58 Givat Shmuel
59 Tira
60 Arad
61 Migdal Haemek
62 Sderot
63 Araba
64 Nesher
65 Kiryat Shmona
66 Yokneam Illit
67 Kafr Qassem
68 Kfar Yona
69 Qalansawa
70 Kiryat Malachi
71 Maalot-Tarshiha
72 Tirat Carmel
73 Ariel
74 Or Akiva
75 Bet Shean
76 Mizpe Ramon
77 Lod
78 Nazareth
79 Qazrin
80 En Gedi

Get Satellite and Radar Images

from weatheril import *
weather = WeatherIL(21,"he")
images = weather.get_radar_images()

The get_radar_images will retun an object with four lists:

  • imsradar_images - Rain radar images (IMS).
  • radar_images - Radar images.
  • middle_east_satellite_images - Middel East weather sattelite images.
  • europe_satellite_images - Eourope weather sattelite images.

You can also create animateg gif from this images lists by using the create_animation method as follows:

from weatheril import *
weather = WeatherIL(21,"he")
images = weather.get_radar_images()
animated = images.create_animation(images = images.middle_east_satellite_images, animated_file = "file.gif", path="/tmp")

The function will return the path for the created image.

Optional You can use the following function to create animated gifs for all images

from weatheril import *
weather = WeatherIL(21,"he")
images = weather.get_radar_images()
images.generate_images(path="Path to store the images")

Sattelite

Get current weather status for given location

from weatheril import *
weather = WeatherIL(21,"he")
current = weather.get_current_analysis()

The result will be a weather object containing the data requested:

  • Location.
  • Humidity.
  • Rain.
  • Temperature.
  • Wind speed.
  • Feels like.
  • UV.
  • Time
  • Json result
       "33": {
            "id": "1601809",
            "lid": "33",
            "forecast_time": "2023-01-25 16:00:00",
            "type": "analysis",
            "main_hour": "0",
            "heat_stress": "17",
            "relative_humidity": "58",
            "due_point_Temp": "11",
            "rain": null,
            "temperature": "20",
            "wind_direction_id": "15",
            "wind_speed": "2",
            "wind_chill": "20",
            "weather_code": null,
            "heat_stress_level": "0",
            "feels_like": "20",
            "min_temp": null,
            "max_temp": null,
            "modified": "2023-01-25 15:55:00",
            "created": "2023-01-22 11:50:05",
            "u_v_index": "0",
            "u_v_level": "L",
            "u_v_i_max": null,
            "u_v_i_factor": null
        }

Get weather forecast

from weatheril import *
weather = WeatherIL(21,"he")
forcats = weather.get_forecast()

This method wil return forecast object that includes weather forecast for the new 5 days. The object contains data on Coutry level and also on give location Forecast >> Daily >> Hourly.

class Forecast:
    days: list

class Daily:
    date: datetime
    location: str
    day: str
    weather: str
    minimum_temperature: int
    maximum_temperature: int
    maximum_uvi: int
    hours: list
    description: str

class Hourly:
    hour: str
    weather: str
    temperature: int

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

weatheril-0.19.0.tar.gz (11.9 kB view details)

Uploaded Source

Built Distribution

weatheril-0.19.0-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file weatheril-0.19.0.tar.gz.

File metadata

  • Download URL: weatheril-0.19.0.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for weatheril-0.19.0.tar.gz
Algorithm Hash digest
SHA256 2c4b488cb079d3aea7a7f622a78773203ca0ba0b994f4c5ec10199a70b116130
MD5 f2b8d417fdbc549f638d033f6f66d472
BLAKE2b-256 34dad11d8010a2b5aebbdc3d3bec5d8304e24a8cdf7689f91768b7e5d44aac5c

See more details on using hashes here.

File details

Details for the file weatheril-0.19.0-py3-none-any.whl.

File metadata

  • Download URL: weatheril-0.19.0-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for weatheril-0.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 085c5aad783928e8da5220692b355ac7cfd0c4922217b1966d7dd8667cc5cb2e
MD5 307d6e2e995bba2cab1db2364ad1ec53
BLAKE2b-256 4c9180812b9162d10e6d1c759996d3981f8af69ab1fdbd6cc19f00ad587ca3a5

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