【问题标题】:parsing and inserting raw text data into mysql database using python or shell使用python或shell解析和插入原始文本数据到mysql数据库
【发布时间】:2016-09-18 04:57:19
【问题描述】:

我有一个文本文件,其中包含以下格式的数据: 这些是文本文件中的 2 行,它是 ncdc 原始天气数据: 突出显示的部分是气温(摄氏度* 100) 这只是我需要插入数据库的列之一。 温度位置始终保持不变。

0029227070999991901122820004+62167+030650FM-12+010299999V0200501N003119999999N0000001N9-01561+99999100061ADDGF1998991999999999

0029227070999991901122906004+62167+030650FM-12+010299999V0200901N003119999999N0000001N9-01501+99999100181ADDGF1998991999999999

如何在 Python 或 Bash 中读取此文本文件并插入到 mysql 数据库中的表中: mysql Ver 14.14 Distrib 5.5.52,适用于使用 readline 6.3 的 debian-linux-gnu (x86_64) Python 2.7.6 我正在运行一个 vagrant ubuntu 虚拟机并正在开发它!

例如表名是 myweatherdata

谢谢!

【问题讨论】:

  • 临时值是否总是出现在文件中的同一位置,即substr(rec,62,8)(或任何位置)?或者整个记录的长度是否会根据输出中出现的内容而改变。请编辑您的 Q 以明确这一点。祝你好运。
  • 位置不变

标签: python mysql bash


【解决方案1】:

在 python 中你可以这样做:

f = open("data.txt", "r") #assuming this is your file
data = f.read()
f.close()

for line in data.split("\n"): #split all data in lines 
    print line[88:93]

最后一步是将其插入数据库而不是仅仅打印它,例如:

INSERT INTO myweatherdata (temperature) 
VALUES (temperature_1)

【讨论】:

    猜你喜欢
    • 2015-09-13
    • 1970-01-01
    • 2011-04-23
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 2014-06-16
    • 2015-03-10
    • 2022-01-19
    相关资源
    最近更新 更多