Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 尝试在Flask restful抛出错误中返回刮取的html标记是不可JSON序列化的_Python_Api_Flask_Flask Restful - Fatal编程技术网

Python 尝试在Flask restful抛出错误中返回刮取的html标记是不可JSON序列化的

Python 尝试在Flask restful抛出错误中返回刮取的html标记是不可JSON序列化的,python,api,flask,flask-restful,Python,Api,Flask,Flask Restful,错误如下所示 在编写上述部分代码时,marstable变量中包含从网站废弃内容中提取的html标记。我直接将其返回到端点,以便客户接收 这是错误的发送方式吗。我应该如何发送它。 我正在使用flask和flask_restful制作rest api检查markstable上的类型。我相信BS.find方法返回的是dict,而不是字符串,所以在返回之前需要将其序列化为json 尝试将jsonify添加到从flask导入的内容中,然后 返回jsonify(markstable=markstable)

错误如下所示

在编写上述部分代码时,marstable变量中包含从网站废弃内容中提取的html标记。我直接将其返回到端点,以便客户接收

这是错误的发送方式吗。我应该如何发送它。
我正在使用flask和flask_restful制作rest api

检查
markstable
上的类型。我相信BS.find方法返回的是dict,而不是字符串,所以在返回之前需要将其序列化为json

尝试将jsonify添加到从flask导入的内容中,然后


返回jsonify(markstable=markstable)
检查
markstable
上的类型。我相信BS.find方法返回的是dict,而不是字符串,所以在返回之前需要将其序列化为json

尝试将jsonify添加到从flask导入的内容中,然后


return jsonify(markstable=markstable)

是的,导入了jsonify,然后在masrktable中使用了jsonify,但仍然有相同的错误我也尝试了这个方法,但问题是相同的,markstable=json.dumps(markstable)return{'marksheet':markstable}这是bs4 beautifulsoup刮取内容的结果。尝试检查vaiable类型时,会显示TypeError:不是JSON Serializable请看这里。您将无法简单地将该类转储为JSON字符串并返回它。也许你想得到里面的东西?如果客户机要接收它并进行更多的解析,那么也许您可以使用pickle之类的东西来持久化它。否则,我认为您需要做更多的工作来获取表的内容,以便将其序列化为json。dumps可以理解的是,导入了jsonify,而不是将jsonify用于masrkstable,但仍然存在相同的错误。我也尝试过这一点,但存在相同的问题,markstable=json。dumps(markstable)返回{marksheet':markstable}这是bs4 beautifulsoup刮取内容的结果。尝试检查vaiable类型时,会显示TypeError:不是JSON Serializable请看这里。您将无法简单地将该类转储为JSON字符串并返回它。也许你想得到里面的东西?如果客户机要接收它并进行更多的解析,那么也许您可以使用pickle之类的东西来持久化它。否则,我认为您需要做更多的工作来获取表的内容,以便将其序列化为json.dumps可以理解的内容
 soup2=BeautifulSoup(marks.content,'html.parser')      
 markstable=soup2.find('table')
 return {'marksheet':markstable}