ZeBinYao 2020-06-03 07:29 采纳率: 0%
浏览 80

每次截图后关闭图片后出来这个

问题:

Traceback (most recent call last):
  File "E:\An3\lib\site-packages\psutil\_pswindows.py", line 716, in wrapper
    return fun(self, *args, **kwargs)
  File "E:\An3\lib\site-packages\psutil\_pswindows.py", line 873, in kill
    return cext.proc_kill(self.pid)
PermissionError: [WinError 5] 拒绝访问。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "京东.py", line 154, in <module>
    task2()
  File "<string>", line 2, in task2
  File "E:\An3\lib\site-packages\pony\orm\core.py", line 528, in new_func
    result = func(*args, **kwargs)
  File "京东.py", line 81, in task2
    see_invoice(driver,html,i)
  File "京东.py", line 118, in see_invoice
    get_product_screenshot(html2)
  File "京东.py", line 145, in get_product_screenshot
    picture_kill(process)
  File "京东.py", line 131, in picture_kill
    proc.kill()
  File "E:\An3\lib\site-packages\psutil\__init__.py", line 392, in wrapper
    return fun(self, *args, **kwargs)
  File "E:\An3\lib\site-packages\psutil\__init__.py", line 1368, in kill
    self._proc.kill()
  File "E:\An3\lib\site-packages\psutil\_pswindows.py", line 718, in wrapper
    raise convert_oserror(err, pid=self.pid, name=self._name)
psutil.AccessDenied: psutil.AccessDenied (pid=13940)

代码:

def get_process_list():
    '''获取当前进程'''
    process_list = []
    for proc in psutil.process_iter():
        process_list.append(proc)
    return process_list

def picture_kill(process_list):
    '''和之前的进程比较,若有新进程则关闭'''
    for proc in psutil.process_iter():
        if not proc in process_list:
            proc.kill()

def get_product_screenshot(html):
    '''截图并保存图片'''
    process = get_process_list()
    img = ImageGrab.grab((445,195,1467,872))
    img.show()
    number = get_order_number(html)
    path = 'E:\python\京东'
    path1 = path + '\\' + number
    path2 = path1 + '\\' + number + '.jpg'
    if not os.path.exists(path):
        os.makedirs(path1)
    img.save(path2)
    picture_kill(process)
  • 写回答

1条回答

  • threenewbee 2020-06-04 09:21
    关注

    PermissionError: [WinError 5] 拒绝访问。
    关闭进程的时候提是没有权限,看看是不是进程已经不存在了或者权限不够
    用os.exec("taskkill 你的进程")试试看

    评论

报告相同问题?

悬赏问题

  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计