diff --git a/tweepy/streaming.py b/tweepy/streaming.py index 9d56e76eb..b37e920b4 100644 --- a/tweepy/streaming.py +++ b/tweepy/streaming.py @@ -251,17 +251,19 @@ def sample(self, count=None, async=False): self.url += '&count=%s' % count self._start(async) - def filter(self, follow=None, track=None, async=False, locations=None, - count = None, stall_warnings=False, languages=None): + def filter(self, follow=None, track=None, async=False, locations=None, + count=None, stall_warnings=False, languages=None, encoding='utf8'): self.parameters = {} self.headers['Content-type'] = "application/x-www-form-urlencoded" if self.running: raise TweepError('Stream object already connected!') self.url = '/%s/statuses/filter.json?delimited=length' % STREAM_VERSION if follow: - self.parameters['follow'] = ','.join(map(str, follow)) + encoded_follow = [s.encode(encoding) for s in follow] + self.parameters['follow'] = ','.join(encoded_follow) if track: - self.parameters['track'] = ','.join(map(str, track)) + encoded_track = [s.encode(encoding) for s in track] + self.parameters['track'] = ','.join(encoded_track) if locations and len(locations) > 0: assert len(locations) % 4 == 0 self.parameters['locations'] = ','.join(['%.2f' % l for l in locations]) @@ -273,6 +275,10 @@ def filter(self, follow=None, track=None, async=False, locations=None, self.parameters['language'] = ','.join(map(str, languages)) self.body = urlencode_noplus(self.parameters) self.parameters['delimited'] = 'length' + + print self.parameters + print self.url + print self.body self._start(async) def disconnect(self):