diff options
Diffstat (limited to 'python-accuweather.spec')
-rw-r--r-- | python-accuweather.spec | 314 |
1 files changed, 314 insertions, 0 deletions
diff --git a/python-accuweather.spec b/python-accuweather.spec new file mode 100644 index 0000000..0569e84 --- /dev/null +++ b/python-accuweather.spec @@ -0,0 +1,314 @@ +%global _empty_manifest_terminate_build 0 +Name: python-accuweather +Version: 0.5.0 +Release: 1 +Summary: Python wrapper for getting weather data from AccuWeather servers. +License: Apache-2.0 License +URL: https://github.com/bieniu/accuweather +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/66/6f/090f3b2063e44b2ed9eb4188d6b414dadb69fe0d64a1a349fa89e1775b93/accuweather-0.5.0.tar.gz +BuildArch: noarch + +Requires: python3-aiohttp +Requires: python3-orjson + +%description +[![GitHub Release][releases-shield]][releases] +[![PyPI][pypi-releases-shield]][pypi-releases] +[![PyPI - Downloads][pypi-downloads]][pypi-statistics] +[![Buy me a coffee][buy-me-a-coffee-shield]][buy-me-a-coffee] +[![PayPal_Me][paypal-me-shield]][paypal-me] + +# accuweather + +Python wrapper for getting weather data from AccuWeather servers for Limited Trial package. + + +## API key + +To generate API key go to https://developer.accuweather.com/user/register and after registration create an app. + + +## How to use package +```python +import asyncio +import logging + +from aiohttp import ClientError, ClientSession + +from accuweather import ( + AccuWeather, + ApiError, + InvalidApiKeyError, + InvalidCoordinatesError, + RequestsExceededError, +) + +LATITUDE = 52.0677904 +LONGITUDE = 19.4795644 +LOCATION_KEY = "268068" +API_KEY = "xxxxx" + +logging.basicConfig(level=logging.DEBUG) + + +async def main(): + async with ClientSession() as websession: + try: + accuweather = AccuWeather( + API_KEY, websession, latitude=LATITUDE, longitude=LONGITUDE + ) + current_conditions = await accuweather.async_get_current_conditions() + forecast = await accuweather.async_get_forecast(metric=True) + forecast_hourly = await accuweather.async_get_forecast_hourly(metric=True) + except ( + ApiError, + InvalidApiKeyError, + InvalidCoordinatesError, + ClientError, + RequestsExceededError, + ) as error: + print(f"Error: {error}") + else: + print(f"Location: {accuweather.location_name} ({accuweather.location_key})") + print(f"Requests remaining: {accuweather.requests_remaining}") + print(f"Current: {current_conditions}") + print(f"Forecast: {forecast}") + print(f"Forecast hourly: {forecast_hourly}") + + +loop = asyncio.new_event_loop() +loop.run_until_complete(main()) +loop.close() + +``` + +[releases]: https://github.com/bieniu/accuweather/releases +[releases-shield]: https://img.shields.io/github/release/bieniu/accuweather.svg?style=popout +[pypi-releases]: https://pypi.org/project/accuweather/ +[pypi-statistics]: https://pepy.tech/project/accuweather +[pypi-releases-shield]: https://img.shields.io/pypi/v/accuweather +[pypi-downloads]: https://pepy.tech/badge/accuweather/month +[buy-me-a-coffee-shield]: https://img.shields.io/static/v1.svg?label=%20&message=Buy%20me%20a%20coffee&color=6f4e37&logo=buy%20me%20a%20coffee&logoColor=white +[buy-me-a-coffee]: https://www.buymeacoffee.com/QnLdxeaqO +[paypal-me-shield]: https://img.shields.io/static/v1.svg?label=%20&message=PayPal.Me&logo=paypal +[paypal-me]: https://www.paypal.me/bieniu79 + + +%package -n python3-accuweather +Summary: Python wrapper for getting weather data from AccuWeather servers. +Provides: python-accuweather +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-accuweather +[![GitHub Release][releases-shield]][releases] +[![PyPI][pypi-releases-shield]][pypi-releases] +[![PyPI - Downloads][pypi-downloads]][pypi-statistics] +[![Buy me a coffee][buy-me-a-coffee-shield]][buy-me-a-coffee] +[![PayPal_Me][paypal-me-shield]][paypal-me] + +# accuweather + +Python wrapper for getting weather data from AccuWeather servers for Limited Trial package. + + +## API key + +To generate API key go to https://developer.accuweather.com/user/register and after registration create an app. + + +## How to use package +```python +import asyncio +import logging + +from aiohttp import ClientError, ClientSession + +from accuweather import ( + AccuWeather, + ApiError, + InvalidApiKeyError, + InvalidCoordinatesError, + RequestsExceededError, +) + +LATITUDE = 52.0677904 +LONGITUDE = 19.4795644 +LOCATION_KEY = "268068" +API_KEY = "xxxxx" + +logging.basicConfig(level=logging.DEBUG) + + +async def main(): + async with ClientSession() as websession: + try: + accuweather = AccuWeather( + API_KEY, websession, latitude=LATITUDE, longitude=LONGITUDE + ) + current_conditions = await accuweather.async_get_current_conditions() + forecast = await accuweather.async_get_forecast(metric=True) + forecast_hourly = await accuweather.async_get_forecast_hourly(metric=True) + except ( + ApiError, + InvalidApiKeyError, + InvalidCoordinatesError, + ClientError, + RequestsExceededError, + ) as error: + print(f"Error: {error}") + else: + print(f"Location: {accuweather.location_name} ({accuweather.location_key})") + print(f"Requests remaining: {accuweather.requests_remaining}") + print(f"Current: {current_conditions}") + print(f"Forecast: {forecast}") + print(f"Forecast hourly: {forecast_hourly}") + + +loop = asyncio.new_event_loop() +loop.run_until_complete(main()) +loop.close() + +``` + +[releases]: https://github.com/bieniu/accuweather/releases +[releases-shield]: https://img.shields.io/github/release/bieniu/accuweather.svg?style=popout +[pypi-releases]: https://pypi.org/project/accuweather/ +[pypi-statistics]: https://pepy.tech/project/accuweather +[pypi-releases-shield]: https://img.shields.io/pypi/v/accuweather +[pypi-downloads]: https://pepy.tech/badge/accuweather/month +[buy-me-a-coffee-shield]: https://img.shields.io/static/v1.svg?label=%20&message=Buy%20me%20a%20coffee&color=6f4e37&logo=buy%20me%20a%20coffee&logoColor=white +[buy-me-a-coffee]: https://www.buymeacoffee.com/QnLdxeaqO +[paypal-me-shield]: https://img.shields.io/static/v1.svg?label=%20&message=PayPal.Me&logo=paypal +[paypal-me]: https://www.paypal.me/bieniu79 + + +%package help +Summary: Development documents and examples for accuweather +Provides: python3-accuweather-doc +%description help +[![GitHub Release][releases-shield]][releases] +[![PyPI][pypi-releases-shield]][pypi-releases] +[![PyPI - Downloads][pypi-downloads]][pypi-statistics] +[![Buy me a coffee][buy-me-a-coffee-shield]][buy-me-a-coffee] +[![PayPal_Me][paypal-me-shield]][paypal-me] + +# accuweather + +Python wrapper for getting weather data from AccuWeather servers for Limited Trial package. + + +## API key + +To generate API key go to https://developer.accuweather.com/user/register and after registration create an app. + + +## How to use package +```python +import asyncio +import logging + +from aiohttp import ClientError, ClientSession + +from accuweather import ( + AccuWeather, + ApiError, + InvalidApiKeyError, + InvalidCoordinatesError, + RequestsExceededError, +) + +LATITUDE = 52.0677904 +LONGITUDE = 19.4795644 +LOCATION_KEY = "268068" +API_KEY = "xxxxx" + +logging.basicConfig(level=logging.DEBUG) + + +async def main(): + async with ClientSession() as websession: + try: + accuweather = AccuWeather( + API_KEY, websession, latitude=LATITUDE, longitude=LONGITUDE + ) + current_conditions = await accuweather.async_get_current_conditions() + forecast = await accuweather.async_get_forecast(metric=True) + forecast_hourly = await accuweather.async_get_forecast_hourly(metric=True) + except ( + ApiError, + InvalidApiKeyError, + InvalidCoordinatesError, + ClientError, + RequestsExceededError, + ) as error: + print(f"Error: {error}") + else: + print(f"Location: {accuweather.location_name} ({accuweather.location_key})") + print(f"Requests remaining: {accuweather.requests_remaining}") + print(f"Current: {current_conditions}") + print(f"Forecast: {forecast}") + print(f"Forecast hourly: {forecast_hourly}") + + +loop = asyncio.new_event_loop() +loop.run_until_complete(main()) +loop.close() + +``` + +[releases]: https://github.com/bieniu/accuweather/releases +[releases-shield]: https://img.shields.io/github/release/bieniu/accuweather.svg?style=popout +[pypi-releases]: https://pypi.org/project/accuweather/ +[pypi-statistics]: https://pepy.tech/project/accuweather +[pypi-releases-shield]: https://img.shields.io/pypi/v/accuweather +[pypi-downloads]: https://pepy.tech/badge/accuweather/month +[buy-me-a-coffee-shield]: https://img.shields.io/static/v1.svg?label=%20&message=Buy%20me%20a%20coffee&color=6f4e37&logo=buy%20me%20a%20coffee&logoColor=white +[buy-me-a-coffee]: https://www.buymeacoffee.com/QnLdxeaqO +[paypal-me-shield]: https://img.shields.io/static/v1.svg?label=%20&message=PayPal.Me&logo=paypal +[paypal-me]: https://www.paypal.me/bieniu79 + + +%prep +%autosetup -n accuweather-0.5.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-accuweather -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Mar 06 2023 Python_Bot <Python_Bot@openeuler.org> - 0.5.0-1 +- Package Spec generated |