小编jmu*_*sch的帖子

OpenCV VideoCapture设备索引/设备号

我有一个 python 环境(在 Windows 10 上),它使用 OpenCVVideoCapture类连接到多个 USB 摄像头。

据我所知,除了类构造函数/方法device中的参数之外,没有其他方法可以识别 OpenCV 中的特定相机。VideoCaptureopen

问题是设备参数会根据实际连接的摄像头数量和 USB 端口而变化。

我希望能够识别特定的相机并找到其“设备索引”或“相机索引”,无论连接了多少个相机以及连接到哪个 USB 端口。

有人可以建议一种实现该功能的方法吗?python 代码更好,但 C++ 也可以。

c++ python windows usb opencv

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

Paramiko Python:IOError:[Errno 13] 权限被拒绝

问题:

我可以做这样的事情:

self.sftp.put(sourceFilePath, final_destination, use_sudo=True)

我可以创建文件夹,但不能创建文件?我是否需要明确调用 sudo 或在 paramiko 中设置一些东西?我应该将文件复制到允许的空间并进行 chowning 吗?有没有办法让 paramikko sudoer 不使用钥匙或不必乱搞ssh.exec_command("sudo mv")?我错过了什么?

编码:

class Ssh(object):

    def __init__(self):
        super(Ssh, self).__init__()

    def setup(self):
        '''Setup connection'''
        try:
            # DEBUG
            paramiko.common.logging.basicConfig(level=paramiko.common.DEBUG)
            #set username & password
            username = 'sgdevbox'
            password = MainFrame.ssh_pass
            host = '192.168.0.170'
            port = 22
            self.transport = paramiko.Transport((host, port))
            self.transport.connect(username = username, password = password)
            self.sftp = paramiko.SFTPClient.from_transport(self.transport)
            print(self.sftp.sock)
        except Exception, e:
            print(traceback.format_exc())

    def putFiles(self, sources, listingSku):
        '''
        Upload images to server along with all currentItemInfo, …
Run Code Online (Sandbox Code Playgroud)

python ssh paramiko

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

urllib3使用指定的用户代理下载文件

更新用户代理信息的正确方法是什么urllib3

如何检查用户代理信息是否确实已更改并正在使用?

例如:

user_agent = {'user-agent': 'Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/20100101 Firefox/36.0'}
http = urllib3.PoolManager(10, headers=user_agent)

r1 = http.request('GET', 'http://example.com/')
if r1.status is 200:
    with open('somefile','w+') as f:
        f.write(r1.data)
Run Code Online (Sandbox Code Playgroud)

当我创建一个PoolManagerat时,http我查看了它,dir(http)并且http.headers默认情况下看到它是空的并更新为指定的用户代理信息,但它是否正在使用?无论如何都要检查而不必查看apache日志?

实际上/var/log/apache2/access.log在尝试更新用户代理后进行检查:

>>> import urllib3
>>> user_agent = {'user-agent': 'Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/20100101 Firefox/36.0'}
>>> http = urllib3.PoolManager(2, headers=user_agent)
>>> r = http.request('GET','localhost')
>>> with open('/var/log/apache2/access.log','r') as f:
...     last_line = f.readlines()[-1]
... 
>>> …
Run Code Online (Sandbox Code Playgroud)

python urllib3

5
推荐指数
1
解决办法
4000
查看次数

将json写为文件Elixir

我做了以下是否有更好的方法来做到这一点?:

File.write("../hello", Poison.encode!(some_stuff))
Run Code Online (Sandbox Code Playgroud)

json elixir

5
推荐指数
1
解决办法
2900
查看次数

python中的"..."是什么?

我看到这个省略号/三点运算符aiohttp:

    if debug is ...:
        debug = loop.get_debug()
Run Code Online (Sandbox Code Playgroud)
  • 它叫什么,它做了什么?
  • 它是某种解构,还是传播运营商?
  • **some_kwargs和它有什么不同*some_args

在这个特定的例子中:

>>> ...
Ellipsis
>>> x = Ellipsis
>>> x is ...
True
>>> ... is ...
True
Run Code Online (Sandbox Code Playgroud)

码:

python python-3.x

5
推荐指数
0
解决办法
147
查看次数

没有 selenium 或 xvfb 的 Firefox Headless 运行一个简单的 javascript

具体来说,我对运行 selenium、phantomjs、chrome 或任何类型的虚拟帧缓冲区(如 xvfb)不感兴趣。

从 v56 开始,可以通过:

firefox -headless
Run Code Online (Sandbox Code Playgroud)

是否有可能运行像这样简单的东西:

firefox -headless some.js | grep -ioh 'stackoverflow' | wc -l
Run Code Online (Sandbox Code Playgroud)

不考虑任何时间...... some.js:

location.href="https://stackoverflow.com"
console.log(document.body);
Run Code Online (Sandbox Code Playgroud)

除了查看https://github.com/saucelabs/foxdriver的源代码之外,我一直无法找到关于控制它的好答案:

?  /Users/jmunsch/Desktop/public_dev /Applications/FirefoxNightly.app/Contents/MacOS/firefox-bin -headless 'javascript:location.href="https://ebay.com"'
*** You are running in headless mode.
[OSVR] Failed to load OSVR Util library!
[OSVR] Failed to load OSVR Util library!
2017-12-13 18:25:23.147 plugin-container[81081:12271051] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0xb93b, name = 'com.apple.tsm.portname'
See /usr/include/servers/bootstrap_defs.h for the error codes.
2017-12-13 18:25:23.148 plugin-container[81081:12271051] *** …
Run Code Online (Sandbox Code Playgroud)

python firefox

5
推荐指数
0
解决办法
634
查看次数

如何模拟 celery 任务的绑定上下文

如何模拟绑定上下文,或模拟 celery 任务 ID?

给定一个芹菜任务,如:

帮助者.py:

from task import some_task

def some_helper():
    some_task.delay(123)
Run Code Online (Sandbox Code Playgroud)

在 task.py 中:

@app.task(queue="abc", bind=True)
def some_task(self, some_number: int):
    print(self.id) # how to mock this attribute access?
Run Code Online (Sandbox Code Playgroud)

简单的测试用例:

from django.test.testcases import TestCase
from helpers import some_helper


class SomeTest(TestCase):

    def test_some_helper(self):
        some_helper()
Run Code Online (Sandbox Code Playgroud)

我试过:

 @patch("celery.app.base.Celery.task", return_value=lambda x: x)
Run Code Online (Sandbox Code Playgroud)

我也试过:

class MockResult(dict):
    def __getattr__(self, x):
        return self[x]

...
def test_some_task(self):
    cls = MockResult({"id": "asdf"})
    bound_some_task = some_task.__get__(cls, MockResult)
    bound_some_task(123)
Run Code Online (Sandbox Code Playgroud)

有关的:

django unit-testing celery python-3.x

5
推荐指数
2
解决办法
913
查看次数

(python) [Errno 11001] getaddrinfo 失败

有人可以帮助我了解如何捕获此错误吗?

import pygeoip  
gi = pygeoip.GeoIP('GeoIP.dat')  
print gi.country_code_by_name('specificdownload.com')  

Traceback (most recent call last):  
  File "<module1>", line 14, in <module>  
  File "build\bdist.win-amd64\egg\pygeoip\__init__.py", line 447, in country_code_by_name  
    addr = self._gethostbyname(hostname)  
  File "build\bdist.win-amd64\egg\pygeoip\__init__.py", line 392, in _gethostbyname  
    return socket.gethostbyname(hostname)  
gaierror: [Errno 11001] getaddrinfo failed 
Run Code Online (Sandbox Code Playgroud)

python getaddrinfo

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

在Firefox中下拉边框问题

在此输入图像描述

Firefox正在切断下拉选择的边界,或者在某些情况下使它们看起来很可怕(使左边框灰色和右边框黑色).

在CSS中有解决方法吗?

我正在使用Bootstrap,UniformJS(删除它没有改变任何东西).

css firefox select border

4
推荐指数
1
解决办法
2718
查看次数

ensurepip模块的源代码在哪里?pyvenv返回非零退出状态1

显然pyvenv-3.4在ubuntu 14.10中无法正常工作.所以我需要抓住ensurepip模块并将其放入lib文件夹中?我的谷歌搜索技巧似乎被破坏了,因为我无法找到源代码.

我正在跑步pyvenv-3.4 $(pwd)/test:

Error: Command '['/home/bob/Desktop/test/bin/python3.4', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1
Run Code Online (Sandbox Code Playgroud)

看到:

有关:

或者是否建议使用第二个相关链接中建议的virtualenv?

python django python-3.x

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