Python Openpyxl:使用object中的多个值写入工作表行

时间:2018-05-29 06:16:14

标签: python excel python-2.7 twitter tweepy

想想我忽略了答案所以需要一双新鲜的眼睛。我的脚本应该搜索并获取推文,然后在一行上写下推文日期,用户名和推文文本,用列分隔。然后将下一个匹配的推文写入新行,依此类推。打印返回的推特对象值确认一切正常。可以打印和分离每条推文的数据。但是,在写入Excel时,我的循环代码只写了第一条推文n次,没有剩下的推文。

代码:

print ('TEST PRINT...')
for tweet in tweepy.Cursor(api.search, search).items(numberOfTweets):
    print(tweet.created_at)
    print(tweet.user.screen_name)
    print(tweet.text)
    print '\n'

for tweet in tweepy.Cursor(api.search, search).items(numberOfTweets):
    for rowNum in range(3, sheet.max_row):
        sheet.cell(row=rowNum, column=1).value = tweet.created_at
        sheet.cell(row=rowNum, column=2).value = tweet.user.screen_name
        sheet.cell(row=rowNum, column=3).value = tweet.text
    break

第二个代码块是问题。如何在不同的行上为每条推文写上述三个推文值?

提前致谢...

1 个答案:

答案 0 :(得分:0)

是的,你正在使用相同的推文进行循环。试试这个(我无法测试):

rowNum = 0 # or 3 ?
for tweet in tweepy.Cursor(api.search, search).items(numberOfTweets):
    sheet.cell(row=rowNum, column=1).value = tweet.created_at
    sheet.cell(row=rowNum, column=2).value = tweet.user.screen_name
    sheet.cell(row=rowNum, column=3).value = tweet.text
    rowNum = rowNum + 1