1.flask
1.flask向前端传值
jinja引擎在任何地方都可以使用模板,比如
@route('/')
def index():
return render_template("index.html", name=name)
var a = '{{ name }}'
2.flask像前端传值时json转换
比如传递list,如果不直接转换,list[0]就会显示[,并且所有的逗号都会占位
所以使用json.dumps()进行转换
另外数据的传输最好使用ajax请求
3.flask连接mysql
原文链接:https://blog.csdn.net/BankxiY/article/details/101023383
使用pymysql库
def func(sql,m='r'):
conn = pymysql.connect (host='127.0.0.1', port=3306, user='root', password='123456', db='networkproject', charset='utf8')
# 得到一个可以执行SQL语句的光标对象
cursor = conn.cursor() # 执行完毕返回的结果集默认以元组显示
try:
cursor.execute (sql)
if m == 'r':
data = cursor.fetchall ()
elif m == 'w':
py.commit ()
data = cursor.rowcount
except:
data = False
py.rollback ()
cursor.close()
conn.close ()
return data
# 首页,将mysql中表的值读出并传到网页----查
@app.route ('/')
def index():
data = func ('select * from stu')
return render_template ('sqldata.html',userlist=data)
2.echarts
3.BUG
1.No 'Access-Control-Allow-Origin' header is present on the requested resource'
def Response_headers(content):
resp = Response(content)
resp.headers['Access-Control-Allow-Origin'] = '*'
return resp
@app.route('/echarts')
def echarts():
datas = {
"data":[
{"name":"allpe","num":100},
{"name":"peach","num":123},
{"name":"Pear","num":234},
{"name":"avocado","num":20},
{"name":"cantaloupe","num":1},
{"name":"Banana","num":77},
{"name":"Grape","num":43},
{"name":"apricot","num":0}
]
}
content = json.dumps(datas)
resp = Response_headers(content)
return resp
2.Max retries exceeded with url
应该是开的网页太多了
3.Nonetype' object is not iterable
https://www.cnblogs.com/classics/p/11165596.html
1.nonetype错误一般都是因为获取的数据是空,也就是数据的爬取过程出现了错误
2.或者编码出现了问题导致正则匹配为空