当我使用此代码启动CGI(公共网关接口)时:
# -*- coding: utf-8 -*-
import cgi
import os
import json
import cgitb
cgitb.enable()
from sklearn.feature_extraction.text import CountVectorizer
print 'Content-type: text/html'
print
print '<html><head><title>Interface Ticket Recognition</title></head><body>'
formulaire = cgi.FieldStorage()
os.chdir("C:\Users\iyacine\Desktop")
path= os.getcwd()
from subprocess import call
call(["Python", "applicationV1.py"])
if path=="C:\Users\iyacine\Desktop":
print '''changer'''
print '</body></html>'
我收到了一个错误:
我尝试更改环境变量中的路径,但这仅适用于cmd。
我在计算机上安装了anaconda,我可以在Spyder中运行模块sklearn.feature_extraction.text,但不能从Apache运行。你知道如何解决这个问题吗?
答案 0 :(得分:0)
您的脚本中应该有第#! /usr/bin/python
行(称为Shebang行)。您必须将该行更改为指向您实际需要的python可执行文件。对于Windows,请查看the docs,但也可以通过CGI运行“.bat”文件,因此您可以使用仅包含
runmyscript.bat
)
@C:\path\to\anaconda\python.exe path\to\script.py
这是一个hacky解决方法(我认为),但也应该有效。
根据我的经验,如果可能的话,最好使用virtualenv - 这不会直接解决路径问题,但有助于隔离不同的应用程序。