Skrip python saya tidak menghasilkan koordinat apa pun kata kunci yang saya cari menggunakan tweepy

Tujuannya adalah menggunakan python untuk mencari tweet yang berisi kata tertentu, mengambil koordinat lintang/bujur, dan menulis ke .csv.

PEMBARUAN: Saat ini ia mengembalikan "tidak ada koordinat" tidak peduli kata kunci apa yang saya gunakan.

 #All of the consumer keys, tokens, and imports are left out of this sample code. 

file = open("C:\Scripts\Output.csv", "w")
file.write("X,Y\n")

data_list = []
count = 0

class listener(StreamListener):

def on_data(self, data):
    global count

    #How many tweets you want to find, could change to time based
    if count <= 2000:
        json_data = json.loads(data)

        coords = json_data["coordinates"]
        if coords is None:
           print("no coordinates")
        else:
           print(coords["coordinates"])
           lon = coords["coordinates"][0]
           lat = coords["coordinates"][1]

           data_list.append(json_data)

           file.write(str(lon) + ",")
           file.write(str(lat) + "\n")

           count += 1
        return True
    else:
        file.close()
        return False

    def on_error(self, status):
        print(status)

auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
twitterStream = Stream(auth, listener())
#What you want to search for here
twitterStream.filter(track=["horse"])

Hasil yang diharapkan adalah file CSV dengan koordinat lintang dan bujur dari tweet dengan kata "kuda". UPDATE: Ini mengembalikan "tidak ada koordinat" untuk kata kunci apa pun yang saya coba.


person Anthony Stokes    schedule 10.09.2019    source sumber


Jawaban (1)


Anda memiliki pernyataan bersyarat untuk:

if coords is not None:

Namun jika "coords" adalah Tidak Ada, tidak ada masalah untuk program Anda. Saya kira di sinilah letak kesalahannya.

Beri tahu saya jika ini membantu! Bersulang!

person Shaun Lowis    schedule 10.09.2019
comment
Saya menambahkan pernyataan if else untuk menangani tanpa koordinat dan itu masih berjalan selamanya. Saya coba buka CSVnya dan katanya terkunci, mungkin karena python masih mengaksesnya. Namun saran yang bagus, saya menghargainya. - person Anthony Stokes; 10.09.2019
comment
ada saran lain? - person Anthony Stokes; 12.09.2019
comment
Pikiran saya adalah menambahkan pernyataan print ke setiap baris kode Anda untuk melihat di mana sebenarnya jangkauannya sebelum hang - person Shaun Lowis; 12.09.2019
comment
Saya menggunakan kode visual studio dan menambahkan breakpoint. Sekarang hanya mengeluarkan koordinat saja. Saya tidak tahu apakah itu skrip saya atau sebenarnya tidak dapat menemukan tweet dengan kata kuda di dalamnya. Pikiran? - person Anthony Stokes; 13.09.2019
comment
Saya ragu ia tidak akan menemukan tweet dengan kata horse di dalamnya karena ini akan memberikan setidaknya beberapa hasil, adakah cara bagi Anda untuk memeriksa apakah skrip Anda menghapus tweet dengan benar? - person Shaun Lowis; 14.09.2019