Error when using RPA.Dialogs

Hi, I’m trying tu use the RPA.Dialogs library but when I executes my task, I have this error message:
You must have either QT or GTK with Python extensions installed in order to use pywebview.

I think my conda packages are not well set.
Do you know what dependencies I should install in order to use RPA.Dialogs?

Thanks

1 Like

Hi,

Can you share your conda.yaml -file and what OS are you running on. Dialogs depend on some system-level stuff to be able to view the dialogs and these have been bothering us on different platforms.

BR, Kari

I use Debian 10 and my conda file is:

channels:
  - conda-forge

dependencies:
  - python=3.9
  - nodejs=14.17.4
  - qt=5.12.9
  - pyqt=5.12.3
  - pyqtwebengine=5.12.1

  - pip=20.1
  - pip:
    - rpaframework==12.2.0 # https://rpaframework.org/releasenotes.html
    - robotframework-browser==11.1.0
    - pyqt5
    - pywebview
    - pywebview[qt]
    
rccPostInstall:
  - rfbrowser init

One thing to avoid here is to have duplicates in the conda and pip sections.

Pip just basically overwrites dependencies quite brutally and can break things.
So I’d first drop the pyqt5, pywebview and pywebview[qt] as you should be getting those already in the dependencies section.

On Linux the dialogs need either Qt or GTK as the error says but I cannot directly see why the qt from conda-forge is not enough… We have limited our Linux testing to Ubuntu as there are so many options, so I do not have info on Debian side.

But I would first drop the duplicates as taking those could easily result in a broken Qt setup for example.
BR, Kari

FYI, I tried this without success (same error message):

channels:
  - conda-forge

dependencies:
  - python=3.9
  - nodejs=14.17.4
  - qt=5.12.9
  - pyqt=5.12.3
  - pyqtwebengine=5.12.1
  - pip=20.1
  - pip:
    - rpaframework==12.2.0 # https://rpaframework.org/releasenotes.html
    - robotframework-browser==11.1.0
    
rccPostInstall:
  - rfbrowser init

I finally use “Dialogs” library instead with success.

Hi @apal
…sorry for the holiday’s silence.

What was the final fix to this? I’m assuming we will hit this with other people using Debian as well.

BR, Kari

Would also like to know what the final solution was.
Having the same issue on Manjaro (Arch) with xfce (no problems on Mac OS).
I also tried adding pycairo/pyobject/gtk3 to the conda.yaml, no difference. Didn’t yet have time to dig deeper.

Running standalone GTK apps with python outside of the Lab (such as this one) works fine though.

Hello everybody. I have the same issue on Xubuntu 20.04.4 LTS. My conda.yml

channels:
    - conda-forge

dependencies:
   - python=3.7.5
   - pip=20.1
   - pip:
       - rpaframework==13.0.0 

I appreciate help or contributions

1 Like

The guides around pywebview for Linux are guide complex:

…the key thing to remember is the pip does not care about “what came before” so by adding pywebview dependencies after rpaframework can and will wipe out the dependencies loaded by rpaframework… potentially causing version mismatches.

So the solution should be something like:

channels:
  - conda-forge

dependencies:
  - python=3.7.5
  - qt=5.12.9
  - pyqt=5.12.3
  - pip=20.1
  - pip:
      - pywebview[qt]==3.6.3
      - rpaframework==13.3.1
3 Likes

Hi all,

I am running robot in control room with Run Dialog keyword but getting error as -
You must have either QT or GTK with Python extensions installed in order to use pywebview.

Does anyone have proper solution for above error.

Thanks in advance.

Regards,
Amin

Hello, Amin! This is pretty much the same conversation as above, we need to see your conda.yaml and also the OS you’re trying this on. Most probably the solution to your problem is above in this thread :slight_smile:

1 Like

Hi,
I have used above conda.yaml in control room bot run. but still it fails with below console log error -

Encountered problems while solving:

  • package qt-5.12.9-h1304e3e_6 requires libglib >=2.70.2,<3.0a0, but none of the providers can be installed

Encountered problems while solving:

  • package qt-5.12.9-h1304e3e_6 requires libglib >=2.70.2,<3.0a0, but none of the providers can be installed

The environment can’t be solved, aborting the operation
error libmamba Could not solve for environment specs
critical libmamba UnsatisfiableError

Note - Same BOT configuration works correctly in my local machine on Windows 10.

Regards,
Amin

Hello Amin,

Really sorry for missing this message until now; Really strange that the bot works locally, but not on the Cloud Environment… I would suggest submitting a ticket at this point, so that we can look at the exact logs of what happened and try to figure out if there’s an issue with the Cloud Environment.

Also it is worth mentioning the RPA.Dialogs library is made for interactive robots, you won’t be able to actually answer to any of the dialogs in the cloud env.

Please provide your conda.yaml so that we can see what is declared there. Thank you.

@amin.patel Could you please help us with what use case do you have? We could provide you with the best solution based on what you need, but needing RPA.Dialogs in the Cloud Environment is not the way to go :slight_smile:

1 Like

@bogdan i have removed RPA.Dialogs from my bot and it worked successfully in control room with all tasks completed.

@jippo PFB conda.yaml

channels:

  • conda-forge

dependencies:

  • python=3.10.5

  • nodejs=18.7.0

  • qt=5.15.4

  • pyqt=5.15.7

  • pip=22.2.2

  • pip:

    • pywebview[qt]==3.6.3
    • rpaframework==15.8.0
    • robotframework==5.0.1
    • robotframework-browser==12.4.0

rccPostInstall:

  • rfbrowser init

See official dependencies from there: template-robot-framework-playwright/conda.yaml at main · robocorp/template-robot-framework-playwright · GitHub

You have too new python and other dependencies. They have not been tested by us.

Hi team!
Hope someone has a minute or two to take a look into my issue =)

I have the same issue as fellows above. My robot works perfectly in VS Code and throws error in Control Room.
I am completing Build a Robot : Certificate II.

I also tried these to add to conda.yaml without any succession:

  • qt=5.15.4
  • pyqt=5.15.7
    and under pip
  • robotframework-browser==13.6.0

My conda looks like this