由於我正在處理其他項目,我不確定何時才能完成這個工具。但是,我想指出的是,大量關注用戶違反了 GitHub 的 TOS(下文未說明)。因此,請自行承擔使用風險!
這是在 Django 應用程式內部製作的 GitHub Follow Bot。機器人的管理是在 Django 的預設管理中心 ( /admin
) 內完成的。該機器人本身在 Django 應用程式的後台運行。
該機器人的工作原理如下。
python3 manage.py createsuperuser
)。需要以下 Python 模型,我建議使用 Python 3.8 或更高版本,因為這是我測試過的版本。
django
aiohttp
您可以像下面這樣安裝它們。
# Python < 3
python -m pip install django
python -m pip install aiohttp
pip install django
pip install aiohttp
# Python >= 3
python3 -m pip install django
python3 -m pip install aiohttp
pip3 install django
pip3 install aiohttp
幾個月前,我發現一些 GitHub 用戶追蹤了超過 10 萬個明顯使用機器人的用戶。起初我很震驚,因為我認為 GitHub 反對大量關注用戶,但在閱讀更多內容後,他們似乎並不介意。這讓我開始思考如果我也開始關注隨機用戶會怎麼樣。其中一些用戶有一個 GitHub.io 項目,該項目受到了很多關注,我認為它來自他們關注的所有用戶。我決定嘗試一下。我想看看它是否可以幫助我與其他開發人員建立聯繫,它確實可以/已經可以了!就我個人而言,我沒有使用機器人來實現這一點,我實際上正在瀏覽其他帳戶的追蹤者清單並關注隨機用戶。正如你所料,這完全弄亂了我的主頁,但它也讓我發現了新項目,在我看來這很整潔。
雖然這在技術上是“垃圾郵件”,但我注意到的一件好事是,它肯定不會影響我所關注的用戶,除了在他們的主頁中添加一行表明我正在關注他們(或者他們收到電子郵件說明這一點(如果他們有的話)。不過,如果很多人/機器人開始這樣做,我可能會發現這變得很煩人(也許GitHub 可以添加一個用戶設置,該設置具有可以關注他們的用戶的最大關注計數,或者在用戶關注時收到通知)。
實際上,我認為到目前為止允許這樣做很巧妙,因為它允許其他人發現您的項目。由於我在這個帳戶上有相當多的網路項目,所以我有一些人聯繫了我追蹤的人,說他們發現我的項目很整潔,因為他們不進入這個領域。
我也不支持僅僅為了大量關注而製作的空白配置文件。
儘管 GitHub 似乎並不介意用戶大量關注其他人(我再次支持),但這仍然被視為垃圾郵件策略。因此,請您自行承擔使用此工具的風險。我什至不會自己使用它,因為我確實喜歡手動關注用戶。我創建這個專案是為了更多地了解 Python。
在網路介面內部,應該可以看到一個設定模型。應插入以下設定。
安裝應該像常規 Django 應用程式一樣執行。該應用程式使用 SQLite 作為資料庫。您可以在這裡閱讀有關 Django 的更多資訊。我會推薦以下命令。
# Make sure Django and aiohttp are installed for this user.
# Clone repository.
git clone https://github.com/gamemann/GitHub-Follower-Bot.git
# Change directory to Django application.
cd GitHub-Follower-Bot/src/github_follower
# Migrate database.
python3 manage.py migrate
# Run the development server on any IP (0.0.0.0) as port 8000.
# NOTE - If you don't want to expose the application publicly, bind it to a LAN IP instead (e.g. 10.50.0.4:8000 instead 0f 0.0.0.0:8000).
python3 manage.py runserver 0.0.0.0:8000
# Create super user for admin web interface.
python3 manage.py createsuperuser
Web 介面應位於http://<host/ip>:<port>
。例如。
http://本地主機:8000
雖然從技術上講,您可以為此機器人運行 Django 應用程式的開發伺服器,因為只有設定是透過那裡配置的,但 Django 建議閱讀本文以供生產使用。
為什麼選擇 Django 作為介面?
雖然設定可以在主機本身上配置,但我想要一個可以從任何地方輕鬆存取的介面。在我看來,最好的方法就是建立一個網站。我的大部分經驗都是與 Django 相關的,這就是我選擇該專案的原因。