如何在PhpMyAdmin

时间:2017-11-15 18:15:59

标签: python mysql csv twitter

我正在开发一个应用程序,我需要在MySQL数据库中存储一组推文以及Tweet ID,Tweet,语言和用户名等属性。

这是我瞄准的目标形象: https://i.imgur.com/1EC3ICc.png

为此,我在python中创建了一个程序,它在Twitter上以JSON文件收集100多条推文。然后,我使用Microsoft Excel将JSON文件转换为CSV文件。在此之后,我在PHPMyAdmin中导入了CSV文件作为表格,我得到了以下结果:https://i.imgur.com/tLkIA0T.png (10行x 185列)

上述问题是一些推文有更多数据,如媒体,这会导致数据扩展到多个列。

如何快速清理此表,以便我在表中只有我想要的属性?我是否需要重新开始使用我的Python代码,或者我可以从表/ CSV文件中清除它吗?

1 个答案:

答案 0 :(得分:0)

如果以JSON格式解析推文并且您只需要一些字段,我建议您使用JSON模块解析所需的字段,并使用Pandas模块将它们转换为结构化表,以便将其写入MySQL,例如:

import json
import pandas as pd

#Open and read the text file where all the Tweets are
with open('tweets.txt') as f:
    tweets = f.readlines()
#Convert the read Tweets into JSON object
tweets_json = [json.loads(tweet) for tweet in tweets]
#Convert the list of Tweets into a structured dataframe
df = pd.DataFrame(tweets_json)
#Finally choose the attributes you need
df = df[['created_at', 'id', ...]]
#To write table into MySQL
df.to_sql(...)