小编fly*_*yer的帖子

如何使用QtWebKit设置浏览器的大小

最近我使用PyQt4来抓取一些网页.我想设置不同大小的浏览器生成QWebView().show().我尝试使用以下代码段来设置大小:

self.qsize = QWebPage().viewportSize()
self.qsize.setHeight(3000)
self.qsize.setWidth(1000)
print self.qsize.height()
print self.qsize.width()
Run Code Online (Sandbox Code Playgroud)

但显示的浏览器总是相同的大小.

请给我一些关于如何设置QWebView显示的浏览器大小的提示.提前致谢.

python qtwebkit pyqt4

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

linux中向stdout写入数据会占用磁盘空间吗?

我想知道在linux终端上向stdout写入数据是否占用磁盘空间。我试图在手册页中查找有关stdouttty的信息,但似乎没有回答该问题。

感谢您的任何提示。

我有一个路由器,上面安装了openwrt,但是路由器的总空间是 2MB,现在只剩下 12KB。我想在openwrt系统中运行一个bash脚本在终端上打印一些信息。所以我想知道将数据打印到标准输出时是否会占用磁盘空间。

linux terminal openwrt stdout

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

gevent.pool.Pool中的map()和imap()如何工作?

我写了一个脚本来学习gevent.pool.Pool,但是我看到了一个奇怪的语音提示。

在我的代码中,我有三个不同的代码段,分别是版本1版本2版本3

  • 当注释掉版本2版本3时,即仅在版本1中使用imap()方法时,则没有任何反应。
  • 当注释掉版本1版本3时,即仅使用版本2中map()方法时,我发现第一个map()方法创建了两个greenlet,然后执行了两个greenlet。完成这两个步骤后,第二个map()方法执行相同的操作。
  • 当注释掉版本1版本2时,即首先使用imap()方法,然后在版本3中使用map()方法时,我发现直到执行了map()方法,然后创建并执行了五个greenlet。

所以我有两个问题:

  • 为什么map()方法触发执行而imap()没有触发?
  • 为什么map()触发执行Pool后实例的长度为非零?

我读的源代码pool.py在GEVENT-1.0,但我不明白的源代码如何增加greenlets给变量self.greenlets之间的差异图()IMAP)( 。在我的选择中,imap()仅返回可迭代的对象,而map()返回由imap()生成的greenlets列表。

下面是源代码的地图()IMAP()pool.py GEVENT的:

def map(self, …
Run Code Online (Sandbox Code Playgroud)

python gevent

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

redis-py管道有多少个命令?

我想使用管道来减少我的程序和redis-server之间的交互次数.
我可能在管道中设置了许多命令,但我找不到任何描述可以在管道中设置的最大命令数的文档.

有什么建议吗?提前致谢.

python redis redis-py

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

docker memory-swap = -1 OOM

我正在使用Ubuntu14.04和docker1.10.3.

当我执行docker run--memory-swap -1,我发现主机使用的内存超出了容器可以使用的最大内存,并且主机上没有其他进程消耗大量内存.下面的图像是我在计算机上进行的测试:

在此输入图像描述

第1部分是主机上的内存使用情况.
第二部分是在容器中运行的测试,用于使用压力在容器中使用900M内存进行模拟.
第3部分docker stats用于查看容器的当前统计数据.

我发现尽管docker stats显示容器使用的内存不超过104.9M,但在主机上使用的内存远远超过104.9M.似乎--memory-swap -1允许容器尽可能多地使用内存.

这是真的吗?

memory memory-management docker

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

为什么在子类化threading.Thread时,super().__ init__不起作用?

我编写了一个简单的程序来通过子类化来使用线程threading.Thread.但是,如果我用它super()来调用__init__其父类的方法,即threading.Thread我得到了这个错误:

TypeError: __init__() got multiple values for keyword argument 'group'
Run Code Online (Sandbox Code Playgroud)

如果我threading.Thread.__init__()直接使用,那么没有错误.

我的代码:

class MyThread(threading.Thread):

    def __init__(self, group=None, target=None, name=None, args=(),
                 kwargs=None, verbose=None):
        super(MyThread, self).__init__(self, group=group, target=target,
                                       name=name, args=args, kwargs=kwargs,
                                       verbose=verbose)
        # threading.Thread.__init__(self, group=group, target=target,
        #                           name=name, args=args, kwargs=kwargs,
        #                           verbose=verbose)
        self.args = args

    def run(self):
        print('a thread %d' % (self.args[0],))


if __name__ == '__main__':
    for i in xrange(5):
        thread = MyThread(args=(i,))
        thread.start()
Run Code Online (Sandbox Code Playgroud)

python multithreading python-2.7

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

如何在zmq的推/拉模式中设置hwm?

我发现了一个类似的问题,ZeroMQ:PUSH上的HWM不起作用,但它无法解决我的问题.

我想控制推送套接字队列的消息数,但它不起作用,仍然排队1000条消息.
所以我想知道如何设置推插座的hwm.提前致谢.

我的环境是:libzmq 4.0.4,pyzmq 14.1.0,python 3.3

这是我的代码:

server.py

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import random

import zmq


class TestPush(object):

    def __init__(self):
        self.ctx = zmq.Context()

        random.seed()

    def run(self):
        task_snd = self.ctx.socket(zmq.PUSH)
        task_snd.setsockopt(zmq.SNDHWM, 10)
        task_snd.bind('tcp://*:53000')        

        while True:
            workload = str(random.randint(1, 100))
            task_snd.send(workload.encode('utf-8'))
            print('Send {0}'.format(workload))


if __name__ == '__main__':
    test_push = TestPush()
    test_push.run()
Run Code Online (Sandbox Code Playgroud)

client.py

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import time
import random

import zmq


class TestPull(object):

    def __init__(self):
        self.ctx = zmq.Context()

    def run(self):
        task_rcv = …
Run Code Online (Sandbox Code Playgroud)

python zeromq pyzmq

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