Qt,获取其他.exe文件的标准输出流的信息(printf/print的输出信息)

比如,通过Python编写爬虫软件功能是运行程序获取豆瓣电影排行榜信息,并通过print打印出来。将其打包成.exe,通过Qt来调用,并获取到.exe程序运行的结果

简单示例代码:

cpp 复制代码
        // 创建 QProcess 对象
        QProcess process;

        // 连接信号槽以获取输出
        QObject::connect(&process, &QProcess::readyReadStandardOutput, [&process]() {
            QByteArray output = process.readAllStandardOutput();
            QString outputStr = QString::fromLocal8Bit(output);  //转化为自己对应的编码格式
                    qDebug() << "标准输出:" << outputStr;
        });

        QObject::connect(&process, &QProcess::readyReadStandardError, [&process]() {
            QByteArray errorOutput = process.readAllStandardError();
            qDebug() << "标准错误输出:" << errorOutput;
        });

        // 启动外部程序
        process.start(".exe所在的路径"); //这里我放入的是我写的爬虫打包的.exe

        // 等待进程完成
        if (!process.waitForStarted())
        {
            qDebug() << "无法启动进程";
            return;
        }

        if (!process.waitForFinished())
        {
            qDebug() << "进程运行出错";
            return;
        }

结果:

相关推荐
数据智能老司机2 小时前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机3 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机3 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机3 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i3 小时前
drf初步梳理
python·django
每日AI新事件3 小时前
python的异步函数
python
Raymond运维3 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉4 小时前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
这里有鱼汤4 小时前
miniQMT下载历史行情数据太慢怎么办?一招提速10倍!
前端·python
databook13 小时前
Manim实现脉冲闪烁特效
后端·python·动效