我想知道是否有人可以帮我修改我当前的代码,根据每天的特定时间来删除推文。我目前正在使用https://github.com/Jefferson-Henrique/GetOldTweets-python从1周前开始发送推文。我下载了他所有的文件,pip安装了所有的软件包。我尝试从11月9日到12月7日每天7:30-8:30(19:30-20:30)修改推文,并将这些推文保存在csv中。但是,我不能让它为我刮掉推文。这就是我修改脚本的方法:
import got
import csv
from unidecode import unidecode
import datetime
# Based on his docs, it looks like you need to do something like this
tweetCriteria = got.manager.TweetCriteria().setQuerySearch('Google').setSince("2016-11-09").setUntil("2016-12-07")
# All the tweets
print "Getting Tweets"
tweets = got.manager.TweetManager.getTweets(tweetCriteria)
BeginHour = 19
EndHour = 20
Minutes = 30
print "\nWriting CSV File"
n_written = 0
with open('tweets3.csv', 'w') as csvFile:
TweetWriter = csv.writer(csvFile, delimiter=',')
TweetWriter.writerow(['user','SentimentText','Date'])
for tweet in tweets:
if (tweet.date.hour > BeginHour and tweet.date.minute > Minutes) or \
(tweet.date.hour < EndHour and tweet.date.minute < Minutes):
user = unidecode(tweet.username)
txt = unidecode(tweet.text)
dt = tweet.date
print "\nAdding Tweet to CSV File"
TweetWriter.writerow([user, 0, txt, dt])
n_written += 1
print "There are now {} tweets in the CSV".format(n_written)
我非常感谢任何帮助
答案 0 :(得分:0)
此外,您的条件为x > 10 or x < 12
,基本上会说明这些条件中的任何一个是True
然后继续。因此,即使15
条件也是如此,因为它大于10
。
更好的条件是
for tweet in tweets:
if (tweet.date.hour > BeginHour and tweet.date.minute > Minutes) and \
(tweet.date.hour < EndHour and tweet.date.minute < Minutes):
而不是or
。您可以根据数据执行任何操作。