2016-04-05 19 views
-1

Sadece bir twitter bot kurdum. Bir metin dosyasından tweet'leri rastgele çeker ve tweetler. Becuase Twitter yinelenen tweet'lere izin vermiyor, tweet'i metin dosyasından nasıl silebilirim ki tekrar denemedim ve tekrar tweet atmıyor mu? Böyle kod görünüm ilgili bitleri:Metin dosyasından rasgele satır çıkarma - Python

while True: 
lines = open('tweets.txt').read().splitlines() 
tweet = random.choice(lines) 
twitter.update_status(status=tweet) 
print (tweet) 
sleepTime = random.randint(30, 60) 
time.sleep(sleepTime) 

Düzenleme: G/güncellemek içinde son tweet olmadan kurtarmak için .txt dosyası gerekir. Bu yüzden tekrar denemeyi denemiyor. Artık bu tweet gerekmiyorsa

+0

Initialize 'onları almak gibi sadece başında, ardından listeden girişleri kaldırın lines'. – tripleee

+0

@triplee, Teşekkürler! bir örnek verebilir misin – user3576482

cevap

-1

Sadece listeden lines bu kaldırabilirsiniz:

while True: 
    lines = open('tweets.txt').read().splitlines() 
    ... 
    for line in lines: 
    if line == tweet: 
     lines.remove(line) 

#EDIT this code write list 'lines' without removed line 
with open("tweets.txt", 'w') as f:                           
for l in lines:                                                              
    f.write(l + '\n') 
+0

Bu gerçekten kolay olurdu. Ancak, botun tweet'leri okuduğu .txt dosyasını güncelleştirmez. – user3576482

+0

Siz efendim/Hanımefendi, sadece nasıl istediğim gibi çalışıyor. – user3576482

İlgili konular