このプログラムを使用するのは、pyautogui モジュールのアプリケーションに慣れるためだけです。すべてのサークル記事が気に入られるわけではありません。注意して使用してください。
pyautogui モジュールが必要です。pyautogui は、プログラムがマウスとキーボードを自動的に制御できる純粋な Python GUI 自動化ツールです。
1. インストール
pip3 インストール pyautogui
インストール後に使用できます
2. 画面上の Moments アイコンの見つけ方
最初にサークル オブ フレンド アイコンのスクリーンショットを撮り、名前を付けます (circle of friends.png)。pyautogui は関数を使用して、ターゲット アイコンと同じアイコンが見つかるまで画面上で一致させ、結果を取得します。
# 图像识别(一个)
oneicon = pyautogui.locateOnScreen('朋友圈.png')
アイコンの認識結果
2 点を特定する
# 图像识别(多个)
multicon = pyautogui.locateAllOnScreen('两个点.png')
2 つの点が識別されると、次のような結果 (リスト) が返されます。
[Box(left=985, top=344, width=79, height=49), Box(left=985, top=1322, width=79, height=49)]
これは、デスクトップ上の「2 つのドット」(スクリーンショットでは 2 つ) がある場所であり、画像が見つからない場合は None を返します。
写真の場所を見つけてクリックすればOKです。
pyautogui.click(位置)
3. プログラム
import pyautogui
import time
top = 0 # 屏幕向上滚动的值,可以根据自己屏幕调整
covertop = 500 # 朋友圈封面高度
delay = 0.01
# 寻找各种图片
def findimge(image):
time.sleep(delay) # 延时
if pyautogui.locateOnScreen(image):
left, top, width, height = pyautogui.locateOnScreen(image)
point = pyautogui.center((left, top, width, height))
pyautogui.click(point)
# 找到两点的位置 滚动一个top值
def findtwopoint():
global top
time.sleep(delay)
if pyautogui.locateOnScreen('两个点.png'):
left, top, width, height = pyautogui.locateOnScreen('两个点.png')
point = pyautogui.center((left, top, width, height))
pyautogui.click(point)
def scrool():
global top
global covertop
time.sleep(delay)
if covertop == 0:
pyautogui.scroll(int(-top / 2)) # 滚动鼠标滚轮
else:
pyautogui.scroll(-top + covertop)
covertop = 0
if __name__ == "__main__":
findimge('朋友圈.png')
while True:
findtwopoint()
findimge('赞.png')
scrool()
4. 以下を実行します。
コンピュータ版の WeChat を開き、ウィンドウを最大化します
プログラムを実行する
既存の問題: いいねをクリックすると、現在の画面にいる場合はもう一度クリックします. 既にクリックしたことを検出できれば、スクロールするだけで問題ありません.