我正在使用 Sixohsix 库从 Twitter API 解析一些推文的数据。我试图将推文的日期转换为我的语言环境:
from pytz import timezone
from dateutil import parser
timestamp = parser.parse(tweet["created_at"])
timestamp_arg = timestamp.astimezone(timezone('America/Buenos_Aires'))
我收到一个 unicode 警告:
dateutil\parser.py:339: UnicodeWarning: Unicode 相等比较未能将两个参数转换为 Unicode - 将它们解释为不相等 elif res.tzname 和 res.tzname 在 time.tzname 中:
我试过做
parser.parse(str(tweet["created_at"]))
parser.parse(unicode(tweet["created_at"]).encode())
但没有任何改变。
除了警告之外,似乎没有任何问题。有谁知道为什么会发生这种情况,以及如何解决?
谢谢!
更新:
我尝试了相同的示例,但将时间硬编码为字符串,并且在没有警告的情况下工作。同样根据警告消息,问题似乎发生在解析调用中,在parser.py:339中
res.tzname in time.tzname
也许是因为 res 是 unicode 而 time.tzname 不是?