2017-11-13 12 views
0

저는 Python에 익숙하지 않고 Reddit 봇을 설정하고 crontab을 통해 자동화하려고합니다. 내가 파이썬을 통해 실행할 때 제대로 작동하지만 crontab에서 위와 같은 결과를 얻었습니다. "TypeError astimezone() 인수 1은 datetime.tzinfo 여야합니다". 이 문제를 어떻게 해결할 지 모르겠으며 온라인에서이 문제에 관해 많이 알지 못했습니다.TypeError astimezone() 인수 1은 datetime.tzinfo 여야합니다.

여기는 내가 천체 현상이있는 곳입니다.

def timeStringToPacific(s): 
    from_zone = tz.gettz('America/New_York') 
    to_zone = tz.gettz('America/San_Francisco') 
    time = datetime.strptime(s[:-3], '%I:%M %p') 
    newyork = time.replace(tzinfo=from_zone) 
    pacific = newyork.astimezone(to_zone) 
    formatted = datetime.strftime(pacific, '%I:%M %p') 
    if formatted[0] == '0': 
     formatted = formatted[1:] 
    return formatted 

어쨌든이 문제를 해결할 수 있습니까? 감사!

답변

0

문자열 "America/San_Francisco"은 유효한 시간대가 아니므로 (tz.gettz("America/San_Francisco")과 함께) 가져 오려고하면 None으로 평가됩니다. astimezone 메서드가 datetime.tzinfo (그러나 대신 NoneType을 얻음)의 인수를 예상 했으므로 차례로 TypeError이 발생합니다.

wikipedia에서 전체 시간대 목록을 볼 수 있습니다.

+0

이것은 정확히 내가 필요한 것입니다. – perksofthesewalls