【Mac系统】安装pykeybord和pymouse后导入仍然失败

1、修改pykeyboard 的__init__ 文件,如下

import sys

 
if sys.platform.startswith('java'):
    from .java_ import PyKeyboard
 
elif sys.platform == 'darwin':
    from .mac import PyKeyboard, PyKeyboardEvent
 
elif sys.platform == 'win32':
    from .windows import PyKeyboard, PyKeyboardEvent
 
else:
    from .x11 import PyKeyboard, PyKeyboardEvent
 
2、导入pymouse后使用,提示“ No module named 'mac'”

 

 

查看pymouse的__init__文件,89行

 

 解决:mac前面加上“.”

 

 

 

 

pymouse的__init__文件内容:

 

# -*- coding: iso-8859-1 -*-

# Copyright 2010 Pepijn de Vos
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

"""The goal of PyMouse is to have a cross-platform way to control the mouse.
PyMouse should work on Windows, Mac and any Unix that has xlib.

See http://github.com/pepijndevos/PyMouse for more information.
"""

import sys
from threading import Thread

class PyMouseMeta(object):

def press(self, x, y, button = 1):
"""Press the mouse on a givven x, y and button.
Button is defined as 1 = left, 2 = right, 3 = middle."""

raise NotImplementedError

def release(self, x, y, button = 1):
"""Release the mouse on a givven x, y and button.
Button is defined as 1 = left, 2 = right, 3 = middle."""

raise NotImplementedError

def click(self, x, y, button = 1):
"""Click the mouse on a givven x, y and button.
Button is defined as 1 = left, 2 = right, 3 = middle."""

self.press(x, y, button)
self.release(x, y, button)

def move(self, x, y):
"""Move the mouse to a givven x and y"""

raise NotImplementedError

def position(self):
"""Get the current mouse position in pixels.
Returns a tuple of 2 integers"""

raise NotImplementedError

def screen_size(self):
"""Get the current screen size in pixels.
Returns a tuple of 2 integers"""

raise NotImplementedError

class PyMouseEventMeta(Thread):

deamon = True
capture = False
state = True

def stop(self):
self.state = False

def click(self, x, y, button, press):
"""Subclass this method with your click event handler"""

pass

def move(self, x, y):
"""Subclass this method with your move event handler"""

pass

 

if sys.platform.startswith('java'):
from .java_ import PyMouse

elif sys.platform == 'darwin':
from .mac import PyMouse, PyMouseEvent

elif sys.platform == 'win32':
from .windows import PyMouse, PyMouseEvent

else:
from .unix import PyMouse, PyMouseEvent

  

posted @ 2021-05-24 17:34  凝心叶子  阅读(1000)  评论(0编辑  收藏  举报