在python中转换为阿拉伯文本

时间:2018-12-13 13:45:19

标签: python mysql pyspark pyspark-sql

我在charset-utf-8的mysql表中有数据。我有一个pyspark脚本,它加载mysql数据并在s3存储桶中写入一个实木复合地板文件。从mysql获取数据时,我在下面获取数据 格式:

formdata

然后我将其转换为utf-8编码,并获得了以下unicode字符串:

is_rememberme

之后,我将其解码为mac_arabic编码,然后得到以下文本:

frmdata = {"captcha":"","email":"MYEMAIL","password":"MYPASS","is_rememberme":"0","locale":"en_US","auth_type":"bearer_token","date":"2018-12-13T09:56:22.957Z"}

有没有一种方法可以从这些字符串中的任何一个生成阿拉伯文本。

下面是代码

'الشرقية'

对于下表中的列,设置了config: 字符集utf8mb4收集utf8mb4_unicode_ci默认为空

对于配置以下的数据库已设置: ENGINE = InnoDB AUTO_INCREMENT = 42627 DEFAULT CHARSET = latin1

谢谢。

1 个答案:

答案 0 :(得分:1)

默认情况下,平台上的JDBC驱动程序版本未使用UTF-8编码。如以上评论所述,尝试将编码明确传递给驱动程序:

df = sqlContext.read.format("jdbc").options(
    url="jdbc:mysql://localhost/db_name?characterEncoding=utf8",
    driver="com.mysql.jdbc.Driver",
    dbtable="table",
    user="root",
    password="root").load()