| |
|
| | from flask import Flask, request, jsonify
|
| | from flask_cors import CORS
|
| | import joblib
|
| | import numpy as np
|
| |
|
| | app = Flask(__name__)
|
| | CORS(app)
|
| |
|
| |
|
| | model = joblib.load('crop_predictor1.pkl')
|
| |
|
| | @app.route('/')
|
| | def home():
|
| | return "Crop Predictor API is running"
|
| |
|
| | @app.route('/predict', methods=['POST'])
|
| | def predict():
|
| | data = request.get_json()
|
| |
|
| | try:
|
| |
|
| | N = float(data['N'])
|
| | P = float(data['P'])
|
| | K = float(data['K'])
|
| | temperature = float(data['temperature'])
|
| | humidity = float(data['humidity'])
|
| | rainfall=float(data['rainfall'])
|
| | ph=float(data['ph'])
|
| |
|
| |
|
| | features = np.array([[N, P, K, temperature, humidity,rainfall,ph]])
|
| | prediction = model.predict(features)
|
| |
|
| | return jsonify({'predicted_crop': prediction[0]})
|
| |
|
| | except Exception as e:
|
| | return jsonify({'error': str(e)}), 400
|
| |
|
| | if __name__ == '__main__':
|
| | app.run(debug=True) |