我在Python中编写了一个非常简单的聊天机器人。 它就像你写的东西一样,它做基于Python的计算并给出答案。因为它也检查你以前的答案,python脚本需要连续运行。 我想把聊天机器人放在网上,并且:
我的Python代码是:
def conversation(question):
answer = #... ... ...(doesnt matter right now)
print "CHATBOT: " + answer
next_question = raw_input("YOU: ")
return next_question
#==========================
#INTRO & CALLING FUNTCTIONS
#==========================
print "Hi, my name is CHATBOT!"
#Starts with user input.
question = ""
question = raw_input("You: ")
#calling the conversation function
question = conversation(question)
问题是:如何将Python脚本与我的网站连接?用户如何在我的终端上与网站上的脚本进行交互?
我很确定这很容易,但我不知道从哪里开始...... 谢谢!
答案 0 :(得分:0)
你需要某种服务器。在您的情况下,您可以使用WebSockets或HTTP。
对于WebSockets,有像Autobahn这样的Python解决方案。 WebSocket记住状态,这对你想要做的事情有好处。这可能是你应该使用的。
对于HTTP,一个简单的Python解决方案是Bottle。
from bottle import route, run, template
@route('/hello/<name>')
def index(name):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)
但HTTP是无状态,因此您不记得最后一次连接。您需要通过为每个用户创建Cookie /会话来记住特定用户的聊天方式。
此外,您仍然需要将其连接到像Nginx这样的Web服务器。
答案 1 :(得分:0)
漂亮的聊天机器人应用程序!诀窍是保持流量控制并将您的功能分开。
所以我做了两个小调整:
我从conversation
获取了流控制,但在main
我将print
中的conversation
语句更改为return
语句,因为如果可以的话,您希望保持打印到屏幕和逻辑功能:) / p>
除此之外,还有一个好的开始!w
def conversation(question):
answer = #... ... ...(doesnt matter right now)
return "CHATBOT: " + answer
def main():
while True:
next_question = raw_input("YOU: ")
print(conversation(next_question))
#==========================
#INTRO & CALLING FUNTCTIONS
#==========================
print "Hi, my name is CHATBOT!"
main()