The most common/best maintained python packages are what tend to come up when you search "How do I...?", so you whatever you're already using is likely fine. The issue I think you're trying to get at is how to keep your end users from having to independently download (e.g., pip install <package>). (this or wrong python version are the only two things that would likely prevent a script with otherwise correct inputs from running)
One way to achieve that is to use the same python version and distribution/package manager (conda, pip, etc) as your clients and not use any packages that do not come in the standard install-this does require you and your clients agreeing on some version, and you will get headaches if somebody updates by accident.
Another option is to include a simple script that checks for the presence of the needed packages and if absent, runs the appropriate install command.
A third route would be to include an appropriate install with all the packages needed with the script.
But the best way to make your scripts usable for your clients is to include good documentation (what inputs are expected, which are required, what version of python the script is written in...) and robust error handling with clear error messages. For example, run a check for the presence of the package you're using, and if it fails, output a message like "<package> not found. This script requires <package> to run. Please install <package> using your preferred python package manager, such as <example>". This can typically be achieved with a try/except block and a print statement.
If Jupyter isn't enough to let your clients avoid the command line, you may want to consider learning something like tkinter to create a GUI-I've noticed a lot of not-program-savvy folks panic a bit if they have to deal with the command line.