我已经创建了用于在mysql中创建表的python脚本,并将json文件导入到mysql DB中。我在下面分享了
Json文件
{“ansible_facts”:{“ansible_network_resources”:{“l3_interfaces”:[{“name”:“GigabitEthernet0/0”},{“name”:“GigabitEthernet0/0.100”,“IPv4”:[{“address”:“172.1.1.1 255.255.255.252”}]},{“name”:“GigabitEthernet0/0.101”,“IPv4”:[{“address”:“172.1.1.1 255.255.255.252”}]},{“name”:“GigabitEthernet0/1”,“IPv4”:[{“
# Table creation in mysql db
import mysql.connector
mydb = mysql.connector.connect( host="IPaddress", user="user", password="pw", database="db")
mycursor = mydb.cursor()
mycursor.execute("CREATE TABLE Routers (ansible_net_hostname NVARCHAR(255), ansible_net_model NVARCHAR(255), ansible_network_resources NVARCHAR(255))")
# Importing Json file into Mysql - Python script
import json, pymysql
json_data=open("L3_out.json").read()
json_obj=json.loads(json_data)
con=pymysql.connect(host="IPaddress", user="user", password="pw", database="db")
cursor=con.cursor()
for item in json_obj:
ansible_net_hostname=item.get("ansible_net_hostname")
ansible_net_model=item.get("ansible_net_model")
ansible_network_resources=item.get("ansible_network_resources")
cursor.execute("insert into Routers(ansible_net_hostname,ansible_net_model,ansible_network_resources) value(%s,%s,%s)",(ansible_net_hostname,ansible_net_model,ansible_network_resources)
con.commit()
con.close()
首先,我们不清楚
for item in json_obj:
ansible_net_hostname=item.get("ansible_net_hostname")
工作。因为在你的例子中'item'是字典中的键。在您显示的文件中,只有一个根键“ansible_facts”。所以您正在尝试对字符串调用get()。要获取“Ansible_Network_Resources”的数据,请执行以下操作:
for key in json_obj:
ansible_network_resources=json_obj[key].get("ansible_network_resources")
问题内容: 我正在导入许多不同的脚本,因此在文件的顶部,它会被导入语句弄得乱七八糟,即: 有没有办法将所有这些都移动到其他地方,然后我要做的就是导入该文件,所以它只是一个干净的导入? 问题答案: 当然有;只需在主文件所在的目录中创建一个名为的文件,然后将导入文件放置在该目录中即可。然后,您可以简单地在主脚本中使用。
问题内容: 我想将文件中的每一行加载到HashSet集合中。有没有简单的方法可以做到这一点? 问题答案: 怎么样: (using Guava)。 参考文献: Files.readLines() Sets.newHashSet()
我正在从我的Java代码中调用一个Python脚本。这是代码: python.py工作 python.py不起作用 所以,我正处于一个关键的阶段,我的启动有一个最后期限,我必须向客户展示我的MVP项目,我想像这样调用Python脚本。当我在没有dB连接和MySQLdb库的情况下打印任何东西时,它起作用。但是当我包含它们时,它并不运行python脚本。这里怎么了。不是应该运行处理所有输入的进程吗。我
问题内容: 我正在从Google文档中提取数据,进行处理,然后将其写入文件(最终我将其粘贴到Wordpress页面中)。 它具有一些非ASCII符号。如何将这些安全地转换为可以在HTML源代码中使用的符号? 目前,我正在将所有内容都转换为,将它们全部合并为Python字符串,然后执行以下操作: 最后一行存在编码错误: 编解码器无法解码位置12286的字节:序数不在范围内(128) 部分解决方案:
在我的Jenkins构建中,我有一个Groovy脚本(因为我使用的是管道插件),在这个脚本中,我试图使用OkHttpClient进行API调用。 我从这里获得了以下葡萄代码: 为此,我得到: 知道有什么问题吗? 在Jenkins管道脚本中运行时,Grape不能检索包吗?
问题内容: 我有一个CSV文件,我想使用Python将此文件批量导入到sqlite3数据库中。该命令是“ .import .....”。但似乎不能这样工作。谁能给我一个在sqlite3中做事的例子吗?我正在使用Windows,以防万一。谢谢 问题答案: