使用Tweepy的Python Geo Scrape

使用Tweepy的Python Geo Scrape,python,json,api,dictionary,tweepy,Python,Json,Api,Dictionary,Tweepy,我正在使用Twitter的API和tweepy,希望从tweet中获取可用的地理位置坐标。我的最终目标是在表中只存储每条Tweet的坐标 我的问题是,当位置推特时,我遇到了一个错误,提供的信息超过了坐标: 到目前为止,我的代码如下: 我确信这个问题与我对“json”缺乏理解有关,或者我需要使用数据字典 我将感谢任何帮助 澄清一下,Tweepy是一个与Twitter API接口的第三方库 这正是Twitter所代表的。Tweepy将状态/数据的坐标属性解析为它所在的字典。您只需访问坐标字段作

我正在使用Twitter的API和tweepy,希望从tweet中获取可用的地理位置坐标。我的最终目标是在表中只存储每条Tweet的坐标

我的问题是,当位置推特时,我遇到了一个错误,提供的信息超过了坐标:

到目前为止,我的代码如下:



我确信这个问题与我对“json”缺乏理解有关,或者我需要使用数据字典


我将感谢任何帮助

澄清一下,Tweepy是一个与Twitter API接口的第三方库

这正是Twitter所代表的。Tweepy将
状态
/数据的
坐标
属性解析为它所在的字典。您只需访问
坐标
字段作为该字典的键,即可获得包含经度和纬度值的列表


您还缺少一个引号,
,在这里您初始化了
auth
,但我认为这是您在替换此问题的凭据时输入的错误。

您好,欢迎使用!这看起来像是家庭作业!请先看,如果需要,请回答您的问题。
import pandas as pd
import json
import tweepy
import csv

class MyStreamListener(tweepy.StreamListener):

    def on_status(self, status):

        if status.retweeted:
            return

        if True:

            coords = status.coordinates
            geo = status.geo

        if geo is not None:
            geo = json.dumps(geo)

        if coords is not None:
            coords = json.dumps(coords)    

            print(coords, geo)
            with open('coordinates_data.csv', 'a') as f:
                writer = csv.writer(f)
                writer.writerow([coords,geo])


    def on_error(self, status_code):
        if status_code == 420:
            #returning False in on_error disconnects the stream
            return False

LOCATIONS = [-124.7771694, 24.520833, -66.947028, 49.384472,        # Contiguous US
                 -164.639405, 58.806859, -144.152365, 71.76871,         # Alaska
                 -160.161542, 18.776344, -154.641396, 22.878623]        # Hawaii

auth = tweepy.OAuthHandler('access auths', 'access auths')
auth.set_access_token('token','token')

api = tweepy.API(auth)
user = api.me()

myStreamListener = MyStreamListener()
myStream = tweepy.Stream(auth = api.auth, listener=myStreamListener)  
myStream.filter(locations=LOCATIONS)