1

我对python非常陌生。我需要一个代码来获取推文及其标记位置或地理标记推文。

我有代码可以根据给定的哈希标签将推文导出到 csv 文件,我想添加另一列,并指定推文的发布位置。

请帮助我。

代码如下,

import tweepy
import csv
import pandas as pd
####input your credentials here
consumer_key = ''
consumer_secret = ''
access_token = '-'
access_token_secret = ''

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth,wait_on_rate_limit=True)


csvFile = open('mydoc.csv', 'a')
#Use csv Writer
csvWriter = csv.writer(csvFile)

for tweet in tweepy.Cursor(api.search,q="#iPhoneX",count=100,
                       lang="en",
                       since="2017-01-01").items():
print (tweet.created_at, tweet.text)
csvWriter.writerow([tweet.created_at, tweet.text.encode('utf-8')])

我非常需要它。请帮助!

4

1 回答 1

0

我认为你可以这样做:

for tweet in tweepy.Cursor(api.search, q="#iPhoneX", count=100, lang="en",
                           since="2017-01-01").items():
    if tweet.coordinates or tweet.geo:
        print(tweet.id_str, tweet.coordinates, tweet.geo)

您可以在此处查看tweet对象(也称为status)的结构。不同的字段对应于:

  • coordinates:“表示用户或客户端应用程序报告的此推文的地理位置。内部坐标数组的格式为 geoJSON(先经度,然后纬度)”
  • place:“当存在时,表示推文与(但不一定源自)a 相关联Place”。当用户为推文标记地点时,就会发生这种情况。
  • geo:“已弃用。改用该coordinates字段。此已弃用属性的坐标格式为 [lat, long],而所有其他推文地理格式为 [long, lat]。”
于 2017-12-29T09:56:08.460 回答