小编Arv*_*amy的帖子

JWT:“模块”对象没有属性“编码”

我得到一个模块未找到错误使用时jwt。这是我的声明方式:

def create_jwt_token():
    payload = {
        "iat": int(time.time())
    }

    shared_key = REST_API_TOKEN
    payload['email'] = EMAIL
    payload['password'] = PASSWORD

    jwt_string = jwt.encode(payload, shared_key)
    encoded_jwt = urllib.quote_plus(jwt_string)  # URL encode the JWT string

    return encoded_jwt
Run Code Online (Sandbox Code Playgroud)

错误消息说在中找不到编码jwt。我做了一个标签jwt,发现编码是里面的一个方法jwt.JWT。我尝试将其更改为

jwt_string = jwt.JWT.encode(payload, shared_key)
Run Code Online (Sandbox Code Playgroud)

它给出了这个错误:

必须以JWT实例作为第一个参数来调用未绑定方法encode()(改为使用dict实例)

我做错了什么?这是我的Python环境的版本信息:

2.7.10 | Anaconda 2.3.0(64位)| (默认值,2015年5月28日,16:44:52)[MSC v.1500 64位(AMD64)]

python jwt

42
推荐指数
7
解决办法
2万
查看次数

如何使用引用的所有字段保存 CSV?

下面的代码没有添加默认的双引号。我还尝试使用选项添加 # 和单引号quote,但没有成功。我还使用了quoteModewithALLNON_NUMERICoptions,输出仍然没有变化。

s2d.coalesce(64).write
  .format("com.databricks.spark.csv")
  .option("header", "false")
  .save(fname)
Run Code Online (Sandbox Code Playgroud)

我可以尝试其他任何选择吗?我使用 spark-csv 2.11 而不是 spark 2.1。

它产生的输出:

d4c354ef,2017-03-14 16:31:33,2017-03-14 16:31:46,104617772177,340618697
Run Code Online (Sandbox Code Playgroud)

我正在寻找的输出:

“d4c354ef”,”2017-03-14 16:31:33”,”2017-03-14 16:31:46”,104617772177,340618697  
Run Code Online (Sandbox Code Playgroud)

scala apache-spark spark-csv

5
推荐指数
1
解决办法
1万
查看次数

使用Spark 2启动Ipython

我有我的ipthon启动脚本如下

IPYTHON_OPTS="notebook --port 8889 \
--notebook-dir='/usr/hdp/2.3.2.0-2950/spark/' \
--ip='*' --no-browser" pyspark
Run Code Online (Sandbox Code Playgroud)

它适用于较旧的Spark.但是当我切换到Spark2时,我收到以下错误:

在Spark 2.0+中删除了IPYTHON和IPYTHON_OPTS.从环境中删除它们并改为设置PYSPARK_DRIVER_PYTHON和PYSPARK_DRIVER_PYTHON_OPTS.

目前尚不清楚我应该用什么命令替换它.有人可以帮忙吗?

ipython apache-spark

4
推荐指数
1
解决办法
2209
查看次数

在 Google Cloud Vision 中将规范化顶点转换为顶点

知道如何将规范化顶点转换为顶点吗?归一化顶点给出了图像上的相对位置,而顶点根据图像的比例返回坐标。我有一组标准化顶点,我想将其转换为常规顶点。

https://cloud.google.com/vision/docs/reference/rest/v1p2beta1/images/annotate#normalizedvertex

google-cloud-vision

3
推荐指数
1
解决办法
2327
查看次数

pyspark为自定义模块返回一个名为error的无模块

我想导入一个包含一些模块的.py文件。我已经将文件init .py和util_func.py 保存在此文件夹下:

/usr/local/lib/python3.4/site-packages/myutil

util_func.py包含我要使用的所有模块。我还需要创建一个pyspark udf,以便可以使用它来转换我的数据框。我的代码如下所示:

import myutil
from myutil import util_func
myudf = pyspark.sql.functions.udf(util_func.ConvString, StringType())
Run Code Online (Sandbox Code Playgroud)

在代码下的某处,我正在使用它来转换数据框中的列之一:

df = df.withColumn("newcol", myudf(df["oldcol"]))
Run Code Online (Sandbox Code Playgroud)

那么我正在尝试查看它是否将其转换为我的使用:

df.head()
Run Code Online (Sandbox Code Playgroud)

它失败,并显示错误“没有名为myutil的模块”。

我能够调出ipython中的功能。莫名其妙的pyspark引擎看不到模块。知道如何确保pyspark引擎拾取模块吗?

python pyspark

2
推荐指数
1
解决办法
1625
查看次数

AWS boto3 grantfullcontrol 语法

我正在使用 Python boto3 将存储桶中所有对象的完全控制权授予另一个帐户。这是我拥有的片段:

s3 = boto3.resource('s3') 
bucket = s3.Bucket("bucketname")
for key in bucket.objects.all():
    key.put(GrantFullControl="id=XXXX")
Run Code Online (Sandbox Code Playgroud)

这段代码运行良好并更改了所有者,但是它用 0 个字节重写了对象。这是因为 put 方法创建了一个新对象吗?更改ACL属性的方法是什么?

python amazon-web-services boto3

1
推荐指数
1
解决办法
2885
查看次数