一雹嗦、簡介
PyAutoIt包提供了AutoIt的python接口祭往。AutoIt是用來針對window程序進(jìn)行自動化操作的一款程序挡爵,擁有自己的腳本語言,底層基于win32Api
二咒唆、安裝問題
在64位機(jī)器上届垫,且使用64位python,pip install PyAutoIt的過程
中全释,可能會報(bào)如下錯誤:
OSError: [WinError 193] %1 不是有效的 Win32 應(yīng)用程序装处。
三、解決方法
下載包恨溜,然后手動安裝
下載PyAutoIt包,解壓進(jìn)入目錄找前,找到目錄中的setup.py文件
在該文件的15行左右糟袁,有一行代碼
dll = "AutoItX3.dll"
這行代碼就是我們報(bào)錯的原因,64位系統(tǒng)\Python用的應(yīng)該是AutoItX3_x64.dll躺盛,所以把這行代碼改過來就行了
dll = "AutoItX3_x64.dll"
改完后保存项戴,運(yùn)行命令:
python setup.py install
即可安裝成功
四、擴(kuò)展
可以注意到槽惫,在剛才改過代碼下面周叮,有一個if判斷:
bit, _ = platform.architecture()
if "(x86)" in os.environ['PROGRAMFILES'] and bit == "64bit":
# if 64bit version of python within 64bit version of Windows,
# load AutoItX3_x64.dll
dll = "AutoItX3_x64.dll"
在交互式命令行中運(yùn)行:
os.environ['PROGRAMFILES']
會發(fā)現(xiàn)結(jié)果是:
C:\Program Files
32位系統(tǒng)是:
C:\Program Files (x86)
所以問題應(yīng)該出if的第一個條件中,大概率是作者的源碼寫錯了界斜,導(dǎo)致在64位平臺下無法正確引用對應(yīng)位數(shù)的dll