gpt4 book ai didi

python - 仅限制带地理标记的推文流向 mongodb

转载 作者:太空宇宙 更新时间:2023-11-03 19:10:19 24 4
gpt4 key购买 nike

我目前正在使用Tweetstream在 MongoDB 中存储推文。
我已经设置了一个使用 python 2.7 运行的脚本:

extent =["144.715, -38.03", "145.219, -37.541"]

with tweetstream.FilterStream(username, password, locations=extent) as stream:
for tweet in stream:
db.tweets.save(tweet)

这工作正常,并将推文存储到 mongoDb 中,但它也存储根本没有地理位置的推文。即对于 coordinates property, ,空白的也被存储。

对我来说,当前脚本应该只将指定范围内的推文保存到我的 mongoDb,但这并没有发生。

任何人都可以建议如何修改我的脚本以捕获仅将指定范围内的地理标记推文发送到 mongoDb 吗?

最佳答案

Twitter 支持两种不同级别的地理定位准确度,以允许用户限制他们共享的信息。

http://support.twitter.com/forums/26810/entries/78525

Why do I see an exact location for some Tweets, but only the general vicinity (neighborhood or city) for others?

The default display is place location (like neighborhood or town), but some third-party apps let you tweet with your exact location or address. If you select your exact location to be displayed through a third-party app, the actual coordinates can be publicly shared.

tweetstream.FilterStream 返回的推文可以具有任一精度。有些推文仅具有地点级别的准确性,在这种情况下,“坐标”键将为“无”。

 u'coordinates': None,
u'place': {u'attributes': {},
u'bounding_box': {u'coordinates': [[[-122.51368188,
37.70813196],
[-122.35845384,
37.70813196],
[-122.35845384,
37.83245301],
[-122.51368188,
37.83245301]]],
u'type': u'Polygon'},
u'country': u'United States',
u'country_code': u'US',
u'full_name': u'San Francisco, CA',
u'id': u'5a110d312052166f',
u'name': u'San Francisco',
u'place_type': u'city',
u'url': u'http://api.twitter.com/1/geo/id/5a110d312052166f.json'},

其他推文将具有确切的位置,在这种情况下,将填充“坐标”键:

 u'coordinates': {u'type': 'Point', u'coordinates': [-122.51368188, 37.83245301]}

您需要决定是否对地点级别准确度推文感兴趣。如果是,您可以将它们的坐标存储为多边形,或计算质心。

关于python - 仅限制带地理标记的推文流向 mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13209459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com