tixcraft_bot
tixcraft_bot copied to clipboard
Intel 版本 Mac 執行閃退 / 缺字 (無法更改 Python 版本)
執行環境
- Apple MacBook Pro 2019 Intel Core i5
- 32 GB 3733 MHz LPDDR4X
- MacOS 14.1.2(23B92)
嘗試方法1
下載版本為: https://github.com/max32002/tixcraft_bot/releases/download/20231212/MaxBot_20231212.zip
已經將 Terminal 預設的 Python3 版本從預設 3.12 降為 Python 3.10.13
我使用 brew 安裝 [email protected], 3.11 並使用 ln -s
替換掉 /Library/Frameworks/Python.framework/Versions/3.12/bin/python3
,因為我的電腦試了各種方法都改不了預設值
~執行時打開立即閃退,沒有任何錯誤訊息~ 已知道原因
嘗試方法2
如果嘗試使用原始碼執行,會發出此錯誤
$ python3 -m pip install -r pip-req.txt
$ python3 settings.py
Traceback (most recent call last):
File "/Users/lackneets/tixcraft_bot/settings.py", line 5, in <module>
import Tkinter as tk
ModuleNotFoundError: No module named 'Tkinter'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/lackneets/tixcraft_bot/settings.py", line 10, in <module>
import tkinter as tk
File "/usr/local/Cellar/[email protected]/3.10.13_1/Frameworks/Python.framework/Versions/3.10/lib/python3.10/tkinter/__init__.py", line 37, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
我是否漏掉什麼步驟?或是不支援我的Mac版本?
Update
後來看故障排除說必須放到 /Application
底下,於是我將應用程式放進去,終於成功打開了,但是遇到缺字
實際發現 APP 是使用 Python 3.9 打開 我似乎沒辦法控制它使用哪個 Pyhon 版本 有人能提供幫助嗎?
"看故障排除說必須放到 Application底下", 你誤會了, 那個是瀏覽器APP 要放到 Application 目錄, 為避免誤會, 我把瀏覽器加上引號. 也在最下面加註說明.
MaxBot.app 不需要放到 Application 目錄下, 其實 MaxBot 只是單純的 python script, 在安裝完Python 的執行檔後, 就可以被執行. 請參考看看這篇文章的執行方法: https://max-everyday.com/2023/11/buy-ticket-by-vm/
3.10.13 太新, 試看看這個 3.10.11 版. https://www.python.org/downloads/release/python-31011/
謝謝你的回覆。 不過我在Mac執行封裝 APP 仍無法解決 MaxBot.app 會以系統內建的 Python 版本開啟:
有裝 xcode 情況,會執行這個 Python:
/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/Resources/Python.app/Contents/MacOS/Python
移除 xcode 情況,會執行這個 Python:
/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/Resources/Python.app/Contents/MacOS/Python
總之,封裝的 MaxBot.app 還是沒辦法使用。 感覺需要設定些什麼,希望有教學如何設置
閃退問題
確實後來我把 MaxBot.app 移回到下載目錄執行也不會閃退了。
為了重現問題,我重新再下載一次,發現剛下載解壓出來的都會閃退。 但一旦丟進 /Appications 就會正常,再拿出來也正常
本來懷疑是權限問題,但看起來都一樣,不知原因:
Workaround
目前我的預設 python 是 3.11 後來亂試一通執行了
$ brew install [email protected]
$ brew install [email protected]
$ brew install [email protected]
並直接從原始碼執行成功啟動了 我也不確定哪個指令奏效
$ python pip install
$ python3 pip install
$ python3 settings.py
我對 Python 語言不熟,不過最早有執行過 python3 -m pip install -r pip-req.txt
這指令好像沒效果
最後,我至少可以打開看到 GUI,但還沒實測是否正常,尤其驗證碼的部分。
你執行 python3 就可以看到 python 的版本號碼.
如果安裝很多個 python3.x 版, 不同的環境下的用法會有差異, 有些會是執行 python3.9 可以指定用 python3.9 來跑. 下面的影片是執行 python3.9: https://youtu.be/8M5LwSZNDX0
用 python 3.11 跑, 不確定 ddddocr 會不會失敗。
Hi,
最近我也遇到缺字的問題,以下是我的環境:
- Intel macOS Sonoma 14.2.1
- Python 3.9.18
確認將 Python3 版本升級至 3.10.11 之後能夠解決缺字問題,附上我的執行方式,給大家參考。
$ python3 --version
Python 3.10.11
$ python3 -m venv tixcraft
$ source tixcraft/bin/activate
$ python3 -m pip install -r pip-req.txt
$ python3 settings.py
@max32002 大,我想是否能夠在 Readme 註明能夠正常運行的版本呢?如果您覺得麻煩,我也可以提交對應的 PR,謝謝。
請參考這部影片的解法, 透過原始碼執行MaxBot教學影片: https://youtu.be/HpVG91j0lbI
Step 1: 取得source code:
git clone https://github.com/max32002/tixcraft_bot.git
Step 2: 進入 clone 的資料夾: tixcraft_bot:
cd tixcraft_bot
Step 3: 安裝第三方套件:
python3 -m pip install -r pip-req.txt
Step 4: 執行設定界面主桯式:
python3 settings.py
如果遇到MaxBot 改版, 請重新操作上面4個步驟一次, 即可取得新的版本.
如果MaxBot 沒改版, 第二次要再執行的話, 使用 Step 2 + Step 4, 這2行指令, 就可以執行 MaxBot.
如果你是 ARM CPU 應該會在 Step 3 就顯示錯誤訊息, 解法: https://github.com/max32002/tixcraft_bot/issues/82#issuecomment-1878986084
在 macOS 裡,如何切換 python 版本?
網路上有很多做法,比較簡單的是在 Terminal app 裡,執行:
sudo rm -rf /Library/Frameworks/Python.framework/
rm -rf /usr/local/bin/python*
然後再到下面的網址裡挑選想要的 stable(穩定版的)python 版本即可: https://www.python.org/downloads/macos/
樓上用 venv 是更好的解法, 可以同時存在多個 python 版本, 缺點就是對不懂電腦的人, 難度會較高一點點.
venv 在網路上有超級多的教學文章, 有空的話可以參考看看這篇: https://stackoverflow.max-everyday.com/2023/02/python-venv-django/
如果還有遇到其他的問題, 歡迎再開新的issue.