2

私はpythonを初めて使用し、些細なことをしようとしています.if-not-modifiedヘッダーをhttpリクエストに追加して、現在はマイナス60秒の時間を渡したいと思っています。now() - 60 秒の部分で多くの困難に直面しています。

私はこれを見てきましたPythonで現地時間をUTCに変換するにはどうすればよいですか? 、これPythonでエポック(UNIX時間)から日時オブジェクトをミリ秒に変換するにはどうすればよいですか? 、および他の多くの質問ですが、この種のアプローチよりも簡単な方法が必要です。

time.strftime("%Y-%m-%d %H:%M:%S", 
              time.gmtime(time.mktime(time.strptime("2008-09-17 14:04:00", 
                                                    "%Y-%m-%d %H:%M:%S"))))

正しい時刻を取得し、引数として addheaders に渡します。

これまでの私のコードは次のとおりです。

interval = 60 #changes other places 
timestamp = datetime.datetime.now() - datetime.timedelta(seconds=interval)

opener.addheaders("if-modified-since", time.strftime('%a, %d %b %Y %H:%M:%S GMT', time.gmtime(time.mktime(time.strptime(timestamp, "%Y-%m-%d %H:%M:%S")))))

これは a をスローしますTypeError: expected string or bufferが、全体として、UTC 文字列で now() + 60 秒のような単純なものを取得するために、これほど多くの操作を行うのはまったくの狂気のようです。より多くの python ninja-foo を持っている人は、私のやり方のエラーを見るのを手伝ってもらえますか?

4

1 に答える 1