如何解决 Unicode 解码问题

How to solve UnicodeEncode proplem

我使用 python2.7 和 flask 框架,我尝试从 Html 页面的 textarea 中获取文本并将其存储在文本文件中,如果文本是用英文写的,它会成功,但我需要让它适用于阿拉伯语文本。 我尝试了很多解决方案但没有结果!

我能做什么!!这是代码。

       # -*- coding: cp1256-*-
       from flask import Flask, render_template, request
       import jinja2
       import os
       import codecs 
       os.chdir("C:\Python27")
       app = Flask(__name__)
       @app.route("/")
       def hello():
           return render_template("razan.html")
       @app.route('/submit', methods=['POST'])
       def submit_textarea():
           text = request.form.get("text")
           with open('aaa.txt','w') as outfile:
                outfile.write(text)
           return  render_template("razan.html")

       if __name__ == "__main__":
              app.run(host="0.0.0.0", port=int("3000"), debug=True)

这是 HTML 代码:

  <!DOCTYPE html>
  <html>
  <head>
  <meta charset="cp1256">
  </head>
  <body>

  <h1>Enter some text</h1>
  <form action="submit" id="textform" method="post" >
     <textarea name="text" type="text"> مرحبا </textarea>
     <button type="submit" value="submit_textarea()" > submt</button> 
  </form>
  </body>
  </html>

它给我这个错误:

UnicodeEncodeError: 'ascii' 编解码器无法对位置 1-6 中的字符进行编码:序号不在范围内 (128)

以unicode读取文件

import codecs
outfile = codecs.open('aaa.txt', 'w', 'utf-8')
outfile.write(text)