Как использовать скрипт Python в коде C ++ (QT)? (аспект веб-слом) - PullRequest
0 голосов
/ 10 июля 2019

Я хочу создать приложение с графическим интерфейсом, которое позволяет конвертировать деньги по обменному курсу в реальном времени.Я использую MacOs и QtCreator (у меня есть также PyCharm и VS Code, но я особенно хочу использовать QtCreator для создания моего графического интерфейса)

Во-первых, я создал скрипт Python, который дает мне обмен в реальном времениОценить со страницы Stooq.Я сделал это, потому что хотел научиться веб-скрапингу.Во-вторых, я хотел сделать квитанцию ​​для этого, и я уже знал, как использовать и написать приложение в Qt Creator на C ++.Итак, я создал приложение.Первой идеей было подключить скрипт на python к моему c ++ qt проекту.Я искал в интернете, но все, что я нашел, это идеи по созданию динамической библиотеки из скрипта Python.Я не знаю, как это сделать, особенно в QtDesigner.Итак, я устроил мозговой штурм и пришел к мысли.Почему бы не сохранить входные данные из моего сценария Python из QtWindow в текстовый файл, затем вызвать сценарий Python и, наконец, сохранить выходные данные из сценария Python в другой текстовый файл.Теперь я просто читаю обменный курс в реальном времени из моего текстового файла.

Но я столкнулся с проблемой.Когда я вызываю свой скрипт на python, компилятор говорит, что у меня нет пакетов, используемых в скрипте (запросы и beautifullsoup).Я проверил, что я установил эти библиотеки на моем компьютере (терминал -> 'запросы на установку brew', 'brew install bs4') Если у меня не установлено это, Qt не видит его.

У вас есть какие-либоидея, как сказать Qt, что у меня уже есть этот материал, или вы можете сказать мне более простой способ добавить скрипт Python в код C ++ qt, или вы можете сказать мне более простой способ сделать веб-очистку?Потому что, основываясь на моем поиске в Интернете, я не нашел другого такого простого способа сделать Gui как Qt.

(Да, и еще один быстрый вопрос: как я могу указать Qt путь к файлу? Как выВ моем коде видно, что мне пришлось пройти полный путь, потому что Qt не увидел мой файл (я вставил его в исходную папку, папку для компиляции и в папку ниже). Помните - я использую Mac. Я знаю, что в Windowsбудет работать только имя файла.

Функция в Qt c ++, вызывающая скрипт Python:

void MainWindow::PythonScriptOpen()
{
    std::string filename = "/Users/username/Desktop/programming/Currency_converter/Currency_Converter/currency_converter.py";
    std::string command = "python ";
    command += filename;
    system(command.c_str());
}

Ошибка:

Traceback (последний вызов был последним): File "/Users/username/Desktop/programming/Currency_converter/Currency_Converter/currency_converter.py ", строка 3, в запросах на импорт ImportError: Нет запросов с именами модулей

1 Ответ

0 голосов
/ 10 июля 2019

Вы должны установить requests по pip(3) install requests

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...