Twitter の API からユーザーの情報を取得する場合、ユーザーのタイム ゾーンに関連する 2 つのフィールドが提供されます。
utc_offset: -14400,
time_zone: "Indiana (East)"
残念ながら、この UTC オフセットが標準時と夏時間のどちらで計算されたのかがわからないため、これですべてを説明することはできません。3600 秒で割ると、-4 時間になります。これは夏の間有効ですが、冬の正しい値は -5 時間です。
値が常に夏時間の値によって決定される場合、そのためのアルゴリズムを書くことができますが、主題を検索した後、その仮定に反するいくつかの貼り付けられた出力を見てきました。(簡単な例として、この質問では、オフセットが -21600 であることが示されています。その後、彼/彼女は中部時間にいると言います。夏時間中に計算すると、-18000 になります)。
値が 1 月 1 日の時点で計算され、オンラインで見つけたいくつかの貼り付けられた出力がそのカテゴリに分類されることは理にかなっていますが、私の Twitter アカウントは、この仮定が無効である上記の値を示しています。次に考えたのは、アカウントを作成した時点で計算されたものではないかということでしたが、タイムゾーンは後でいつでも変更できるため、それも間違っているように思えます (それでも、アカウントを作成したのは 11 月だったはずです)。夏時間ではなく標準時間で!)。
私の最後の考えは、API リクエストの日付までに値が計算されている可能性があるということでした。これは非常に理にかなっており、私が所有する Twitter アカウントはすべてこれを検証しているようです。しかし、先にリンクした SAの質問は、その人が 6 月 2 日に質問に回答したことを示しています。これは夏時間であり、彼/彼女の値 -21600 は中部時間帯の標準時間を反映しています。
この問題を解決した人はいますか?本当にありがとう!