2015-03-15 3 views
1

Кажется, что не все твиты, которые я получаю с использованием фильтра, содержат элемент («здоровье» в этом случае). Как я могу получить только твиты, содержащие этот конкретный элемент? Кто-нибудь может мне помочь? Большое спасибо заранее!Результаты фильтра tweepy streaming track

Это линия, когда я использую фильтр: sapi.filter (локаций = [- 79.55, 37.883, -75.067, 39,717], трек = [ "здоровье"])

ответ

1

К сожалению, Streaming API делает не разрешать фильтрацию по обоим местоположению и условиях. From the docs:

Ограничительные коробки не действуют как фильтры для других параметров фильтра. Например, трек = твиттер & location = -122.75,36.8, -121.75,37.8 будет соответствовать любым твитам, содержащим термин Twitter (даже негео-твиты) ИЛИ поступающий из района Сан-Франциско.

Так по существу причина вы видите некоторые твиты, которые не содержат слово «здоровье» происходит потому, что вы получавшие твиты, содержащие слово «здоровье», ИЛИ, расположенный в пределах вашего ограничивающего параллелепипеда (в данном случае, locations=[-79.55, 37.883, -75.067, 39.717]).

Вы можете, однако, попытаться отфильтровать по вашим терминам (-ам) , затем проанализировать данные твита для местоположения или поочередно фильтровать по местоположению, а затем искать текст твита для своих терминов. Я бы предположил, что последнее, если необходимо, ограничить объем вашего потребления твитов.

+0

спасибо, @dbernard! Теперь мне разумно, почему получили эти результаты. Большое спасибо!!! –

0

Это очень просто, вам просто нужно добавить эту строку в свой код.

twitterStream.filter (трек = [ "здоровье"])

Смежные вопросы