小编Tig*_*222的帖子

有没有办法使用 mss 截取当前非活动桌面的屏幕截图?

我试图在使用 mss 和 opencv 播放网站时记录屏幕,但我不希望程序使用当前屏幕。我想把它们放在第二个桌面上播放,比如下图中的桌面 2 macos 有 4 个桌面设置

所以我可以在桌面 1 中工作而不会受到任何干扰。

python python-mss

7
推荐指数
1
解决办法
409
查看次数

docker client(docker 1.12/centos)http:server给HTTPS客户端提供HTTP响应

在centos 7上设置docker 1.12.使用带有以下命令行的systemd启动docker(根据systemctl status docker):

/usr/bin/dockerd -D --tls=false --tlscert=/var/docker/server.pem --tlskey=/var/docker/serverkey.pem -H tcp://10.10.2.1:2376
Run Code Online (Sandbox Code Playgroud)

然后我想检查本地机器,设置以下环境变量:

DOCKER_HOST=tcp://10.10.2.1:2376
DOCKER_TLS_VERIFY=0
DOCKER_MACHINE_NAME=default
Run Code Online (Sandbox Code Playgroud)

然后使用docker命令行工具进行检查:

docker --tls=false --tlsverify=false  images
Run Code Online (Sandbox Code Playgroud)

结果是:

尝试连接时发生错误:获取https://10.10.2.1:2376/v1.24/images/json:http:服务器向HTTPS客户端发出HTTP响应

快速检查:

curl http://10.10.2.1:2376/images/json
Run Code Online (Sandbox Code Playgroud)

给出图像信息.

现在:我假设服务器确实响应了http(这是有意的),但是如何让客户端也与http对话?

http docker

6
推荐指数
1
解决办法
3931
查看次数

Pytesseract,尝试检测屏幕上的文本

我将 MSS 与 pytesseract 结合使用,尝试在屏幕上读取以确定正在监视的区域中的字符串。我的代码如下:

import Image
import pytesseract
import cv2
import os
import mss
import numpy as np

with mss.mss() as sct:
    mon = {'top': 0, 'left': 0, 'width': 150, 'height': 150}

    im = sct.grab(mon)
    im = np.asarray(im)
    im_gray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY)
    #im_gray = plt.imshow(im_gray, interpolation='nearest')

    cv2.imwrite("test.png", im_gray)
    #cur_dir = os.getcwd()
    text = pytesseract.image_to_string(Image.open(im_gray))
    print(text)

    cv2.imshow("Image", im)
    cv2.imshow("Output", im_gray)
    cv2.waitKey(0)
Run Code Online (Sandbox Code Playgroud)

我返回以下错误: AttributeError: 'numpy.ndarray' object has no attribute 'read'

我还尝试使用 pyplot 将其转换回图像,如代码示例中的注释行所示。然而,这会打印回错误: TypeError: img is not a numpy array, isn't …

python numpy pytesser python-mss

3
推荐指数
1
解决办法
2万
查看次数

无需写入磁盘即可截取屏幕截图

我想要一个python脚本,它可以在不立即将其直接保存到磁盘的情况下截取屏幕截图。基本上是否有一个带有函数的模块,该函数返回原始字节,然后我可以自己手动将其写入文件?

import some_screenshot_module
raw_data = some_screenshot_module.return_raw_screenshot_bytes()
f = open('screenshot.png','wb')
f.write(raw_data)
f.close()
Run Code Online (Sandbox Code Playgroud)

我已经检查了 mss、pyscreenshot 和 PIL,但我找不到我需要的东西。我找到了一个看起来像我要找的函数,叫做 frombytes。但是,在从 frombytes 函数检索字节并将其保存到文件中后,我无法将其视为 .BMP、.PNG、.JPG。是否有一个函数可以返回我可以自己保存到文件中的原始字节,或者可能是一个具有类似功能的模块?

python byte screenshot python-mss

2
推荐指数
1
解决办法
2894
查看次数

使用delete []但字节肯定会丢失,为什么?

为了解释我的问题,这是极简主义的main.cc:

#include "./main.h"

int main(int argc, char *argv[]) {
    char *buffer = new char[12];
    char *output = new char[12];
    FILE *input  = fopen("file.test", "r");

    while ( read_stdin(buffer, 12, input, output) ) {
        // Operations on output
        // (...)
    }

    fclose(input);
    delete[] output; output = 0;
    delete[] buffer; buffer = 0;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

和main.h:

#include <cstdio>
#include <cstring>

inline bool read_stdin(char *tmp_buffer, const size_t &len, FILE *input, char *&output) {
    output = fgets(tmp_buffer, len, input);
    if ( output != NULL …
Run Code Online (Sandbox Code Playgroud)

c++

0
推荐指数
1
解决办法
124
查看次数

标签 统计

python ×3

python-mss ×3

byte ×1

c++ ×1

docker ×1

http ×1

numpy ×1

pytesser ×1

screenshot ×1