Kalmat / PyWinCtl

Cross-Platform module to get info on and control windows on screen
Other
179 stars 19 forks source link

No matching distribution found for pywin32>=302 #52

Closed RensTillmann closed 1 year ago

RensTillmann commented 1 year ago

I am trying to install this on Windows 10 64 bit system. I currently have Python 3.10.9 installed. Seems it's complaining about pywin32 or something. So I tried to install that based on the repo instructions. But no luck either. Perhaps someone over here knows what I can do to resolve this issue.

C:\Users\User>pip install PyWinCtl==0.0.38
Collecting PyWinCtl==0.0.38
  Downloading PyWinCtl-0.0.38-py3-none-any.whl (62 kB)
     ---------------------------------------- 62.0/62.0 kB 3.2 MB/s eta 0:00:00
Collecting PyRect~=0.1
  Downloading PyRect-0.2.0.tar.gz (17 kB)
  Preparing metadata (setup.py) ... done
ERROR: Could not find a version that satisfies the requirement pywin32>=302; sys_platform == "win32" (from pywinctl) (from versions: none)
ERROR: No matching distribution found for pywin32>=302; sys_platform == "win32"
C:\Users\User>pip install pywin32
ERROR: Could not find a version that satisfies the requirement pywin32 (from versions: none)
ERROR: No matching distribution found for pywin32
C:\Users\User>pip install pywin32==302
ERROR: Could not find a version that satisfies the requirement pywin32==302 (from versions: none)
ERROR: No matching distribution found for pywin32==302
RensTillmann commented 1 year ago

I believe I resolved it. I cleaned up everything in regards to Python, and noticed that even after deleting everything python --version still returned a version 3.8.2. I also made sure there was nothing left in the env variable PATH.

After doing a where python I was able to find it's location. In my case it was located here: c:\msys64\mingw64\bin\python.exe after removing that and reinstalling 3.10.9 I was able to get it installed without problems with below commands:

C:\Users\User>python -m pip install --upgrade pip
C:\Users\User>python -m pip install PyWinCtl==0.0.38
Collecting PyWinCtl==0.0.38
  Using cached PyWinCtl-0.0.38-py3-none-any.whl (62 kB)
Collecting PyRect~=0.1
  Using cached PyRect-0.2.0.tar.gz (17 kB)
  Preparing metadata (setup.py) ... done
Collecting pywin32>=302
  Downloading pywin32-305-cp310-cp310-win_amd64.whl (12.1 MB)
     ---------------------------------------- 12.1/12.1 MB 10.9 MB/s eta 0:00:00
Installing collected packages: pywin32, PyRect, PyWinCtl
  DEPRECATION: PyRect is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at https://github.com/pypa/pip/issues/8559
  Running setup.py install for PyRect ... done
Successfully installed PyRect-0.2.0 PyWinCtl-0.0.38 pywin32-305
Kalmat commented 1 year ago

Just one comment: why are you using pywinctl v0.0.38? I strongly recommed you use last version v0.0.43 (it's available in PyPi). Just remove the "==0.0.38" in your pip command if you want to install this last version.

Thank you for your interest and feedback!

RensTillmann commented 1 year ago

Hi Kalmat,

I required pywinctl just for this tool (https://github.com/tryptech/obs-zoom-and-follow). This script would then be inserted into OBS so you can zoom and follow the mouse movement while screen recording.

After running into issues, I found a YT video which I followed. That video said it was best to use v0.0.38 to make it work. It probably also will work with a later version. I bet. But I think I will leave it as it is for now since it works :)

Thanks for your time and effort!