用于从MySQL检索数据并将其发布到Web服务器的Python脚本

时间:2017-08-07 06:23:51

标签: python json post webserver

我正在尝试使用python脚本从MySQL检索数据并将数据以json格式发布到Web服务器。我有两个单独的python代码,一个用于检索MySQL中的数据,另一个用于以json格式发布数据。我面临的主要问题是我不知道如何将它们整合在一起。

从MySQL检索数据的代码:

   import MySQLdb 
   db = MySQLdb.connect("locahost", "root", "12345", "testdatabase") 
   curs=db.cursor() 
   curs.execute("SELECT * from mydata")
   reading = curs.fetchall() 
   print "Data Info: %s" % reading

发布到网络服务器的代码:

import json
import urllib2
import requests

data = {
       'ID' :1
       'Name' :Bryan
       'Class' :3A
}
req = urllib2.Request('http://abcd.com') //not the actual url
req.add_header('Content type', 'application/json')
response=urllib.urlopen(req, json.dumps(data))

我参考了以下链接中的代码:

Retrieve data from MySQL

Retrieve data from MySQL 2nd link

Post to web server

Post to web server 2nd link

欢迎任何形式的协助。

2 个答案:

答案 0 :(得分:0)

您可以将连接用作库文件

文件connection.py:

def db_connect(query):
    import MySQLdb db = MySQLdb.connect("locahost", "root", "12345", "testdatabase") 
    curs=db.cursor() 
    curs.execute(query)
    reading = curs.fetchall() 
    return reading

主要文件:webserver.py

import json
import urllib2
import requests
import connection   

mysql_data = connection.db_connect("SELECT * from mydata")
#data = <Your logic to convert string to json>
req = urllib2.Request('http://abcd.com') //not the actual url
req.add_header('Content type', 'application/json')
response=urllib.urlopen(req, json.dumps(data))

方法2 你也可以尝试sql alachemy,它直接从sql查询中提供dict数据。您可以使用过滤器而不是直接sql查询。

我建议这种方式更好,您可以浏览链接&#34; https://pythonspot.com/en/orm-with-sqlalchemy/&#34;

答案 1 :(得分:0)

def db_connect(query):
    import MySQLdb db = MySQLdb.connect("locahost", "root", "12345", "testdatabase") 
    curs=db.cursor() 
    curs.execute(query)
    reading = curs.fetchall() 
    return reading