Youtube「動画が一時停止されました。続きを視聴しますか?」←は?????
作業中、youtubeを作業BGM代わりに使っている人は多いかと思います。こんな時、再生は止まってほしくないものです。ところが、しばらくバックグラウンドで再生していると、アレ、再生が止まったゾ...
動画が一時停止されました。続きを視聴しますか?[OK]
ふざけんな!!!!!(声だけ迫真)
Chormeの拡張機能を試す。
クロームの拡張機能(アドオン)を探したところ、下記がヒット。
当該ポップアップを消してくれるアドオンのようです。早速入れてみましたが、やはり停止される模様...。これはマクロを自作するしかないですね。JavaScriptはかけないので、アドオンを作るのは諦めて、pythonで実装することにしました。
コード
プログラムは非常に単純です。例のポップアップの[OK]が出る場所を3秒に一回、自動でクリックするというものです。今回はマウスポインタを自動で動かすので、そのことを警告する画面も出します。また、Escキーでプログラムを終了する機能も付けようと思います。
import time
import MouseControll
import keyboard
from concurrent.futures import ProcessPoolExecutor
import tkinter
# クールタイム
time.sleep(3)
# クリック連打したい座標
coo = [832, 448]
def win_disp() :
# 無効化機能お知らせウインドウ表示
root = tkinter.Tk()
root.attributes("-topmost", True)
w = tkinter.Label(root, text='Auto click macro is running!!!\nPush Esc key to quit', font=("normal", 20), fg = 'red', bg = 'black')
w.pack()
# ウィンドウを保持
root.mainloop()
# 実際にクリックプロセス
def myclick() :
while True :
# 座標を引数にとってクリックする関数
MouseControll.mouse_controll(coo)
# 3秒間隔で連打
time.sleep(3)
# ボタン待ち受けプロセス
def btn_detc() :
while True:
# ESCキーを押すまでクリックし続ける
if keyboard.read_key() == 'esc' :
############# 問題の箇所
# ここでプログラムを終了させたい
break
# マルチプロセス開始!!!
if __name__ == '__main__' :
with ProcessPoolExecutor(3) as executor :
executor.submit(myclick)
executor.submit(win_disp)
future = executor.submit(btn_detc)
time.sleep(3)
while True:
if not future.running():
break
for process in executor._processes.values():
process.kill()
import pyautogui
def mouse_controll(coo) :
pyautogui.click(coo[0], coo[1])
ファイル配置は、上記2つのpythonファイルを同じ階層(同一のフォルダ)に設置します。
コード内のクリックする座標coo
は自分で特定する必要があります。
完成!!
完成しました。これ以降、例のポップアップに出会っていません^^
謝辞
こちらで有益な回答を頂きました。この場を借りて感謝申し上げます。