Пример #1
0
def filter_track():
    track = ["python"]
    stream_auth = BasicAuthHandler('<USERNAME>', '<PASSWORD>')
    api = API()
    stream = Stream(stream_auth, MyStreamListener(api))

    print 'start filter track ', ','.join(track)
    stream.filter(track=track)
Пример #2
0
 def build_stream(self):
     if self.stream != None:
         self.stop_query()
         time.sleep(.01) # make sure old stream has time to disconnect
     self.stream = Stream(BasicAuthHandler(self.username, self.password),
                          self, # this object implements StreamListener
                          timeout = 600, # reconnect if no messages in 600s
                          retry_count = 20, # try reconnecting 20 times
                          retry_time = 10.0, # wait 10s if no HTTP 200
                          snooze_time = 1.0) # wait 1s if timeout in 600s
Пример #3
0
 def __init__(self, username, password, listener, timeout=5.0, retry_count = None,
                 retry_time = 10.0, snooze_time = 5.0, buffer_size=1500):
     self.auth = BasicAuthHandler(username, password)
     self.running = False
     self.timeout = timeout
     self.retry_count = retry_count
     self.retry_time = retry_time
     self.snooze_time = snooze_time
     self.buffer_size = buffer_size
     self.listener = listener
     self.api = API()
     self.headers = {}
     self.body = None
Пример #4
0
    def _stream_init(self):
        api1 = API()

        headers = {}
        headers["Accept-Encoding"] = "deflate, gzip"
        stream_auth = BasicAuthHandler(social_keys.TWITTER_HTTP_AUTH_U,
                                       social_keys.TWITTER_HTTP_AUTH_P)

        l = TestStreamListener(api=api1)
        self._stream = Stream(auth=stream_auth,
                              listener=l,
                              secure=True,
                              headers=headers)
Пример #5
0
    def basic_authenticate(self, file_name):
        """
        Creates an Authhandler using Basic method
        """
        try:
            with open(file_name) as f:
                cred = f.readline().split(',')
        except IOError:
            print "Error  : Authentication file not found"

        if len(cred) != 2:
            print "Error : Expecting to retrieve 2 values"
        else:
            #username, password
            self.auth = BasicAuthHandler(cred[0], cred[1])
Пример #6
0
def main():
    global follow_list

    infoModule.info.site['dblink'] = mysql_tools.db_connect()
    auth = BasicAuthHandler(twitterAccount, tiwtterPassword)
    stream = newStream(auth, StreamWatcherListener(), timeout=None)

    follow_list = getUserList()
    # Demo Mode
    #follow_list = getUserList(True)
    infoModule.info.site['dblink'].close()
    if len(follow_list) == 0:
        file_put_contents('Could not get a list of users to follow')
        sys.exit()

    stream.filter(follow=follow_list)
Пример #7
0
def train_tweets():
    tokyo = LocationFence("Tokyo", 138.946381, 35.523285, 139.953232,
                          35.906849)
    hokkaido = LocationFence("Hokkaido", 139.546509, 41.393294, 145.742798,
                             45.729191)
    kyusyu = LocationFence("Kyusyu", 129.538879, 31.147006, 131.856995,
                           33.934245)

    locations = [tokyo, hokkaido, kyusyu]
    request_coordinates = []
    for l in locations:
        request_coordinates += l.get_coordinates()

    stream = Stream(BasicAuthHandler(tw_username, tw_password),
                    Trainer(locations),
                    secure=True)
    stream.filter(locations=request_coordinates)
        conn = connect(opts.dsn)
        cursor = conn.cursor()

        # Don't know how this happens
        if status.geo == None:
            print 'No geo information'
            return

        if status.geo['type'] != 'Point':
            print 'Geo is of type ' + status.geo['type']
            return

        # Insert the status into the DB.

        wkt = 'SRID=4326;POINT(%s %s)' % (status.geo['coordinates'][1],
                                          status.geo['coordinates'][0])

        cursor.execute(
            'INSERT INTO ' + opts.table +
            ' (screenname, tweet, the_geom) VALUES ' +
            '(%s, %s, ST_GeomFromEWKT(%s))',
            (status.user.screen_name, status.text, wkt))
        conn.commit()


listener = PGSQLListener()
auth = BasicAuthHandler(args[0], args[1])
s = Stream(auth, listener, secure=True)
#s.filter(track="foothill college")
s.filter(locations=[float(i) for i in opts.geo.split(',')])