2014-01-15 38 views
0

我有一大组推文,我需要从一周时间段,一天时间段等检索推文。所以,我想指定一个开始日期和结束日期,并检索所有数据匹配查询。现在,我有这样的代码:转换Twitter时区并执行搜索

pac=timezone('US/Pacific') 
utc=timezone('UTC') 
start_created_at = datetime.strptime(tweet['created_at'], '%a %b %d %H:%M:%S +0000 %Y') 
start_utc_created_at = utc.localize(start_created_at) 
start_pac_created=start_utc_created_at.astimezone(pac) 

,给了我这样的

2014-01-11 10:51:11-08:00 

我现在还在学习如何处理日期输出/时间,所以我希望得到有关如何执行的任何提示查询并选择特定时间段内的推文,而不需要手动输入整个字符串,而不是像01/01/2014-01/10/2014那样的东西,或者可以轻松管理的东西。

+0

如果你问如何查询数据库,有点上的数据库和表模式的信息可能会帮助 – mhlester

+0

对不起!编辑!我现在不想查询数据库,只想学习基础知识。对于那个很抱歉! – Anastasia

+0

完美。这就是我所设想的,但我想确保。我已在下面更新了我的答案,以反映出 – mhlester

回答

0

您已将其转换为datetime对象,该对象100%正确。

我们需要将其与另外两个datetime对象进行比较,表示我们日期范围的开始和结束。

start_timestamp = datetime.datetime(2014, 1, 14) 

现在加入了timedelta对象等于一周创建结束时间戳,(7天)

end_timestamp = start_timestamp + datetime.timedelta(7) 

最后:通过传递的年,月,日到DateTime类创建开始时间戳,确保鸣叫时间戳是起点和终点之间:

if start_timestamp < start_created_at < end_timestamp: 
    print 'yay!' 
+0

我收到了一个错误:TypeError:无法比较偏移量天真和偏移量感知日期时间 – Anastasia

+0

查看此主题:http://stackoverflow.com/a/796019/3130539 。您可以添加时区信息,或删除时区信息以使“天真”匹配 – mhlester