Untitled
unknown
plain_text
2 years ago
4.2 kB
8
Indexable
This is the code-
import json
from pandas.io.json import json_normalize
app = Flask(__name__)
app.app_context().push()
@app.route('/user_prediction', methods=['POST'])
def run_recommendation():
#pdb.set_trace()
if request.method =='POST':
param_vals = request.args.get('ticket_data') # Retrieve the JSON data from the request body
print("param_vals: ", param_vals)
# URL-decode the ticket_data
ticket_data_encoded = unquote(param_vals)
print("Ticket Data encoded : ",ticket_data_encoded)
## error here
# Convert the decoded string back to a dictionary
ticket_data = ast.literal_eval(ticket_data_encoded)
print("Ticket_data Literal Eval : ",ticket_data)
ticket_data= str(ticket_data)
print("Ticket_data : ",ticket_data)
json_data = ast.literal_eval(ticket_data)
print("Json Data : ",json_data)
pred_data = pd.DataFrame(json_data, index=[0])
print("Pred Data : ",pred_data)
recommendations=ticket_prediction.event_prediction(pred_data)
if recommendations is not None:
print("Recommended users for the ticket are-")
for i, rec in enumerate(recommendations.iterrows()):
index, row = rec
print(f"Recommendation {i+1}: User {row['person_who_resolved']}, Owner User ID {row['owner_user_id']}, Role Name {row['role_name']}")
return recommendations.to_json()
else:
return jsonify({"error":"No recommendation found"})
if __name__ == "__main__":
app.run(host='100.87.2.56', port=8895, threaded=True)
I am getting an error when I passing Http request-
Traceback (most recent call last):
File "/Analytics/venv/CAPEANALYTICS/lib/python3.8/site-packages/flask/app.py", line 2073, in wsgi_app
response = self.full_dispatch_request()
File "/Analytics/venv/CAPEANALYTICS/lib/python3.8/site-packages/flask/app.py", line 1518, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/Analytics/venv/CAPEANALYTICS/lib/python3.8/site-packages/flask/app.py", line 1516, in full_dispatch_request
rv = self.dispatch_request()
File "/Analytics/venv/CAPEANALYTICS/lib/python3.8/site-packages/flask/app.py", line 1502, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
File "/tmp/ipykernel_51763/3451279359.py", line 31, in run_recommendation
ticket_data = ast.literal_eval(ticket_data_encoded)
File "/Analytics/python3/lib/python3.8/ast.py", line 99, in literal_eval
return _convert(node_or_string)
File "/Analytics/python3/lib/python3.8/ast.py", line 88, in _convert
return dict(zip(map(_convert, node.keys),
File "/Analytics/python3/lib/python3.8/ast.py", line 98, in _convert
return _convert_signed_num(node)
File "/Analytics/python3/lib/python3.8/ast.py", line 75, in _convert_signed_num
return _convert_num(node)
File "/Analytics/python3/lib/python3.8/ast.py", line 66, in _convert_num
_raise_malformed_node(node)
File "/Analytics/python3/lib/python3.8/ast.py", line 63, in _raise_malformed_node
raise ValueError(f'malformed node or string: {node!r}')
ValueError: malformed node or string: <_ast.Name object at 0x7f2ec7321a00>
192.168.10.7 - - [18/Sep/2023 11:57:16] "POST /user_prediction?ticket_data=%7B%27ticket_category%27:%27Application%27,%27ticket_type%27:%27HCM%20-%20OPM%27,%27ticket_item%27:%27Talent%20Profile%27,%27ticket_summary%27:%27Application%20data%20error%27,ticket_desc:%27employee%20hired%20chroma%20recrui%27,%27ticket_severity%27:%273%20-%20Minor%27%7D HTTP/1.1" 500 -
param_vals: {'ticket_category':'Application','ticket_type':'HCM - OPM','ticket_item':'Talent Profile','ticket_summary':'Application data error',ticket_desc:'employee hired chroma recrui','ticket_severity':'3 - Minor'}
Ticket Data encoded : {'ticket_category':'Application','ticket_type':'HCM - OPM','ticket_item':'Talent Profile','ticket_summary':'Application data error',ticket_desc:'employee hired chroma recrui','ticket_severity':'3 - Minor'}
Somewhere near ast.literal_eval we are getting error.
Can you help fix this issue.Editor is loading...