我知道可以通过执行“ xdotool getmouselocation”来获取鼠标光标的当前位置。

我想从bash终端或python代码中检测当前的鼠标光标类型,例如指针,光束或手形光标。这可能吗?

谢谢。
六月

最佳答案

您可以使用xdotool连续单击链接的位置,直到程序注意到窗口标题更改为止。当窗口标题更改时,这意味着已单击链接,并且正在加载新页面。

点击功能:

ff_window=$(xdotool search --all --onlyvisible --pid "$(pgrep firefox)" --name ".+")

click-at-coords() {
    title_before=$(xdotool getwindowname $ff_window)
    while true; do
        sleep 1
        title_now=$(xdotool getwindowname $ff_window)
        if [[ $title_now != $title_before]]; then
            break
        else
            xdotool windowfocus --sync "$ff_window" mousemove --sync "$1" "$2" click 1
        fi
    done
}


假设您正在使用xdotool单击以使用坐标:

# replace each x and y with the coordinates of each link
# example with 2 sets of coordinates: all_coords=("67 129" "811 364")
all_coords=("x y" "x y")

for sub in "${all_coords[@]}"; do
    coords=($sub)
    click-at-coords "${coords[@]}"
done

10-06 06:28