You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP调用请求HTTPS链接的Python脚本失败问题排查

排查PHP调用Python脚本获取Bittrex卖价失败的问题

看起来你的Python脚本在本地控制台跑没问题,但通过PHP调用就卡壳了,这种情况通常是环境差异或者权限/输出捕获的问题,我给你列几个排查方向,按顺序试应该能找到原因:

  • 先抓错误信息,别瞎猜
    你的脚本现在没有任何错误处理,PHP调用时如果脚本报错,你可能根本看不到问题在哪。先给Python脚本加个异常捕获,把错误打出来:

    import requests
    import sys
    
    print("---------------------------new program --------------------------------")
    try:
        # 注意这里把URL里的&改成&,HTML实体编码在直接请求里不需要
        r = requests.get(url='https://bittrex.com/api/v1.1/public/getorderbook?market=BTC-XRP&type=both')
        r.raise_for_status()  # 触发HTTP状态码错误(比如403、500)
        data = r.json()
        print(data["result"]["sell"][0]["Rate"])
    except Exception as e:
        # 把错误输出到stderr,这样PHP能捕获到
        print(f"Error details: {str(e)}", file=sys.stderr)
    

    然后修改PHP代码,同时捕获标准输出和错误输出:

    // 一定要用Python脚本的绝对路径,比如/home/youruser/bittrex_price.py
    $python_path = '/usr/bin/python3'; // 换成你实际的Python路径,控制台输which python3能拿到
    $script_path = '/path/to/your/bittrex_price.py';
    $command = escapeshellcmd("$python_path $script_path") . " 2>&1";
    $output = [];
    $return_code = 0;
    exec($command, $output, $return_code);
    
    echo "Return Code: $return_code<br>";
    echo "Output:<br>";
    print_r($output);
    

    运行PHP页面后,你就能看到具体的错误了——是requests库没装?还是网络连不上?还是JSON解析失败?

  • 检查Python环境一致性
    控制台用的Python和PHP调用的Python可能不是同一个!比如你本地用python3是/usr/local/bin/python3,但PHP用的是/usr/bin/python3,后者可能没装requests库。
    可以在Python脚本里加一行print(sys.executable),分别在控制台和PHP调用时看输出的路径,然后用那个路径重新装requests:

    /path/to/php/used/python -m pip install requests
    
  • 权限与网络问题
    PHP通常是以web服务器用户(比如www-data、apache)运行的,这个用户可能:

    • 没有执行Python脚本的权限:给脚本加执行权限chmod +x /path/to/your/script.py
    • 没有网络权限访问Bittrex API:检查服务器防火墙、SELinux或者安全组是否阻止了web进程的出站请求
    • 没有读取脚本文件的权限:确保web用户对脚本所在目录有读权限
  • URL编码坑
    你原来的URL里用了&amp;,这是HTML的实体编码,直接在Python的requests.get里应该用普通的&,虽然控制台可能自动兼容,但PHP调用的环境里可能因为编码问题导致请求URL错误,改成&就好。

先按第一步抓错误信息,大部分情况都能直接定位问题,有具体错误了再针对性解决就行。

内容的提问来源于stack exchange,提问作者dramasea

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:23:03