kledgeb Ubuntuの使い方や日本語化、アプリの使い方を紹介しています。 Ubuntuの最新情報も紹介しています。

TypeError: is_day_now() missing 1 required positional argument: 'rawOffset'

  「Weather Underground」や「World Weather Online」を利用すると、「My Weatherインジケーター」が起動しない、もしくは天気情報が取得できなくなる問題がLaunchpadに報告されています。

  Launchpad


  My Weatherインジケーターのバージョン

  「My Weatherインジケーター」のバージョンは「0.6.8-0extras14.04.5」です。


エラーの確認

  「My Weatherインジケーター」が起動しない場合や天気情報が取得できない場合、この問題が原因かどうか調べるには、「端末」から「My Weatherインジケーター」を起動する必要があります。

  Dash等のアプリケーションランチャーから「My Weatherインジケーター」を起動しても、このエラーは表示されません。

  ここではウェザーサービスに「Weather Underground」を選択しています。

  1.端末から起動

    「端末」を起動し、以下のコマンドを実行します。

/opt/extras.ubuntu.com/my-weather-indicator/bin/my-weather-indicator

    以下のように「My Weatherインジケーター」が起動します。


  2.エラー

    しばらくすると、以下のように「TypeError: is_day_now() missing 1 required positional argument: 'rawOffset'」エラーが表示され、「My Weatherインジケーター」が終了します。


Traceback (most recent call last):
  File "/opt/extras.ubuntu.com/my-weather-indicator/bin/my-weather-indicator", line 50, in <module>
    mwi=MWI()
  File "/opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/myweatherindicator.py", line 135, in __init__
    self.load_preferences()
  File "/opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/myweatherindicator.py", line 368, in load_preferences
    self.work()
  File "/opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/myweatherindicator.py", line 192, in work
    self.set_menu()
  File "/opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/myweatherindicator.py", line 504, in set_menu
    weather = self.weatherservice1.get_weather()
  File "/opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/wundergroundapi.py", line 146, in get_weather
    weather_data = self._get_weather()
  File "/opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/wundergroundapi.py", line 85, in _get_weather
    if weatherservice.is_day_now(weather_data['current_conditions']['sunrise_time_utc'],weather_data['current_conditions']['sunset_time_utc']):
TypeError: is_day_now() missing 1 required positional argument: 'rawOffset'

対応策

  すでにこの問題は報告されており、アップデートで対応される予定です。
  アップデートが待てない人は、以下の方法で修正可能です。

  1.テキストエディターの起動

    「My Weatherインジケーター」のソースコードを修正するため、「root」でテキストエディターを起動し、修正するファイルを開きます。

    「端末」を起動し、以下のコマンドを実行します。

sudo -i gedit /opt/extras.ubuntu.com/my-weather-indicator/share/my-weather-indicator/weatherservice.py


  2.修正箇所の確認

    テキストエディターが起動したら、修正箇所を探します。
    「def is_day_now」で検索します。

    以下のように修正箇所が見つります。
    修正する箇所は赤線の箇所です。


  3.修正

    以下のように修正を行います。
    「=0」を追記します。

rawOffset=0


    修正したらファイルを保存しテキストエディターを終了します。

  4.My Weatherインジケーターの起動

    「My Weatherインジケーター」が起動するかどうか、天気情報が取得できるかどうか確認します。



関連コンテンツ
同一カテゴリーの記事
コメント
オプション