在Django/Python文件中调用.php
我正在用Django开发一个应用程序,想要运行一个我之前写好的.php脚本。我需要能够给这个.php文件传一个字符串,并且获取它返回的结果。有没有人知道怎么做?我可以发起某种http请求,然后获取响应吗?
附注:我已经尝试把这个php文件转换成python脚本,但没能成功……
2 个回答
0
如果这是一个由网络服务器提供的PHP文件(我从你提到的HTTP请求问题猜的),你可以这样做:
In [1]: import urllib2
In [2]: resp = urllib2.urlopen('http://www.starenka.net/ip')
In [3]: resp.read()
Out[3]: 'ip: 62.245.xx.xx\nlocal ip: 62.245.xx.xx\nhostname: ip-62-245-xx-xx.net.upcbroadband.cz\n'
In [4]: resp.info()
Out[4]: <httplib.HTTPMessage instance at 0x9f8720c>
8
试试这个,我在这里找到的。
import subprocess
#simple caller, disguard output
subprocess.call("php /path/to/my/old/script.php")
# if you want output
proc = subprocess.Popen("php /path/to/my/script.php", shell=True,
stdout=subprocess.PIPE)
script_response = proc.stdout.read()