我用Twitter API很難,我使用下面的代碼來獲取一些推文,但每次我得到不同數量的推文(它實際上取決於幾個參數應用:朗,流行/最近,過濾器等。)如何使用sqlite和rowcount計算for循環中的記錄
for tweet in tweepy.Cursor(api.search,q=str(keyword),
result_type='recent', lang="en").items(num_tweets):
這裏的目標是有許多的鳴叫(在這個例子中是10與50已經從Twitter的要求)數據庫文本處理後,計算等。
我正在使用此代碼,但我不確定是否包含2 if語句的最佳方法,我不知道在哪裏把空名單..
num_tweets = 50
final = tweet.text
words = len(final.split()) # To delete short tweets
nline = keyword,final # Values for db
if (words > 15):
cursor.execute('INSERT OR IGNORE INTO tweets (keyword, tweet) VALUES (?, ?)', (nline))
conn.commit()
rows_affected=cursor.rowcount
# print (rows_affected)
if (rows_affected == 1):
stored = []
exact = len(stored)
stored.append(final)
print ('Tweet Stored')
print (len(stored))
else:
pass
if (exact < 10):
# print (exact)
continue
else:
break
如果我的代碼發現只有9鳴叫和stored
列表永遠達不到期望的結果是什麼?我應該使用類似=<
的東西嗎?
我的嘗試是在INSERT
添加LIMIT 10
到DB代碼...並使用rowcount
你需要理清任何語法錯誤,這樣就可以運行代碼並向我們提供實際的輸出**和**所需的輸出。 – quamrana
@quamrana對不起,我更新了問題,實際上它工作正常(沒有語法錯誤),但只有9條推文存儲在數據庫中。 – Blacksun
您現在已將您的作業遺失爲'exact',但我懷疑您沒有積累計算您在所有迭代中總共存儲的推文數量。 – quamrana