小编ser*_*ira的帖子

MacOS - 检测相机何时打开/关闭

我想根据 MBP 上的相机使用情况自动化个人工作流程。

基本上我想知道是否有任何相机(内置或 USB)已打开或关闭,以便我可以运行我将创建的程序或脚本。

我认为如果我需要轮询相机状态也可以,但基于事件或回调的解决方案将是理想的

peripherals macos camera automation

11
推荐指数
2
解决办法
987
查看次数

AWS Elastic Beanstalk公开的源代码

我曾尝试使用AWS论坛获得帮助,但是,哦,男孩,很难在那里得到任何东西.无论如何,原帖还在那里.

这是同一个问题.

我使用Elastic Beanstalk和Python容器部署了一个Python(Flask)应用程序.目录结构或多或少都是这样的(简化到了这一点):

[app root]
  - application.py
  - requirements.txt
  /.ebextensions
      - python-container.config 
  /secrets
      - keys.py
      - secret_logic.py
  /myapp
      - __init__.py
      /static
         - image1.png
         - some-other-file.js
      /services
         - __init__.py
         - some-app-logic.py
Run Code Online (Sandbox Code Playgroud)

我发现我的应用中的任何文件都可以通过浏览来检索,如下面的网址所示:

我捅了一下,发现这是由文件/etc/httpd/conf.d/wsgi.conf中的这个配置引起的:

Alias /static /opt/python/current/app/ 
<Directory /opt/python/current/app/>
Order allow,deny
Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)

基本上,这允许通过/ static虚拟路径对我的整个应用程序(部署在/ opt/python/current/app /)进行读访问.

在这一点上,有人可能会建议使用.config ebextension文件覆盖默认的Python容器staticFiles选项(顺便说一下,这是一个可怕的默认值)是一件简单的事情.好吧,如果你看一下我的目录结构,你会看到python-container.config,它有:

"aws:elasticbeanstalk:container:python:staticfiles":
    "/static/": "app/myapp/static/"
Run Code Online (Sandbox Code Playgroud)

但是,在生成Apache配置文件时,将完全忽略此文件.要(我认为)证明,请查看这些文件的AWS EB脚本(只是重要的一行):

/opt/elasticbeanstalk/hooks/configdeploy/pre/01generate.py:

configuration = config.SimplifiedConfigLoader().load_config()
config.generate_apache_config(
    configuration, …
Run Code Online (Sandbox Code Playgroud)

python amazon-web-services flask amazon-elastic-beanstalk

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

如何与Hyper-V中的VM实例共享主机VPN连接?

我在Server 2008上运行我的工作站,在该服务器上运行Hyper-V VM中的一些服务器.我使用来自主操作系统(主机)的VPN连接到我的公司LAN,但我的VM没有看到公司LAN中的服务器.互联网和本地访问我的家庭网络工作正常.每个VM都有一个虚拟网络适配器.

我该怎么做才能让它发挥作用?

也许我需要提供更多细节,如果需要请询问.

更多细节:

  • 无法启动多个VPN连接
  • 不通过主机使用NAT
  • VM从家庭网络路由器(DHCP)获取IP地址

windows networking hyper-v connectivity

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

使用PyCrypto的RSA公钥解密

据我了解,我应该能够使用RSA来确保真实性或隐私,如我所愿.在我的情况下,我想确保真实性,因此我使用私钥加密数据,并允许任何人使用公钥解密它.数据并不是真正的秘密,但我需要保证它是由公共(和私人)密钥的所有者创建的.

当我尝试使用PyCrypto解密时,我从PyCrypto 得到No private key error.代码是这样的:

def _decrypt_rsa(decrypt_key_file, cipher_text):
    from Crypto.PublicKey import RSA
    from base64 import b64decode

    key = open(decrypt_key_file, "r").read()
    rsakey = RSA.importKey(key)
    raw_cipher_data = b64decode(cipher_text)
    decrypted = rsakey.decrypt(raw_cipher_data)
    return decrypted
Run Code Online (Sandbox Code Playgroud)

我用公共密钥文件的路径(OpenSSH格式)调用它.加密数据不是由我生成的,它不是用Python而是用PHP完成的.在PHP中,有一个openssl_public_decrypt可以轻松解密这些数据的函数.

是否有可能使用PyCrypto的公钥解密?

python rsa pycrypto

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

实体框架代码 - 首先,MySQL和unicode支持

我正在使用带有MySQL的EF Code-First(EFCF)来使用迁移创建我的数据库.我遇到的问题是字符列.

我不是MySQL的专家,但从我读过的东西,在MySQL中你至少可以通过两种方式在表中支持Unicode:

  1. 使其成为整个表的默认值: CREATE TABLE mytable (...) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_unicode_ci;

  2. 使每个特定列支持Unicode :( CREATE TABLE myTable (col1 VARCHAR(10) CHARSET utf8, OtherColNotUnicode VARCHAR(5), ...);注意MySQL没有NVARCHAR)

事实证明,默认情况下,EFCF迁移创建没有Unicode支持的表和列,我找不到覆盖它的方法或注释模型中的属性,基本上强制它使用选项12.

我该如何纠正这个问题?我最好逐列设置它,但如果需要,我可能会使用整个表默认值.

如果它有帮助,我使用EF 5.0,MySql.Data和MySql.Data.Entity v 6.6.4.0.

mysql entity-framework

6
推荐指数
0
解决办法
1558
查看次数

RequireJS不等待模块加载?

我正在努力解决一个问题,试图只加载我的应用程序需要的模块.该模块列表将有所不同,如下所示.

此代码在动态页面中内联:

<script data-main="js/main" src="js/require.js"></script>
<script>
  //APPROACH #1
  (function(){

     <% foreach(DashBoardItem item in AvailableItems){ %>
          require('js/dashboard/<%= item.Name.ToLower() %>').init(<%= CurrentUser.ID %>);  
     <% } %>

  }());
</script>
Run Code Online (Sandbox Code Playgroud)

这个想法是产生这样的东西:

<script>
 //APPROACH #1
 (function(){
    require('js/dashboard/sales').init(123);
    require('js/dashboard/inventory').init(123);
    require('js/dashboard/deadlines').init(123);
  }());
</script> 
Run Code Online (Sandbox Code Playgroud)

我不确定这是否可行或是因为上述方法导致错误

尚未为上下文加载模块名称"js/dashboard/sales":_.使用require([])

我尝试生成这个:

<script>
   //APPROACH #2
   require(['js/dashboard/sales', 'js/dashboard/inventory', 'js/dashboard/deadlines' ],
           function(sales, inventory, deadlines){
              sales.init(123);
              inventory.init(123);
              deadlines.init(123);
           });
</script>
Run Code Online (Sandbox Code Playgroud)

但这种失败,因为显然RequireJS不会等待模块加载和这三个参数的回调(sales,inventory,deadlines)会undefined在执行时.

我完全错了吗?如何从服务器端向客户端JS传递所需模块的变化列表?

更新 - 修复

我的问题是我的模块(销售,库存,截止日期)被错误地声明了.感谢下面的@anoopelias的评论,我意识到我已经使用了require(...)而不是define(...)在其中.所以他们就像:

//example of WRONG sales.js module
require(['jquery', 'other-module'], …
Run Code Online (Sandbox Code Playgroud)

javascript amd requirejs

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

使用venv时环境$ PATH不同

我在mac(OSX mavericks)上使用PyCharm来运行如下所示的简单脚本.它只是打印PATH变量.我在项目目录中有一个virtualenv.我在PyCharm中添加了一个Run Configuration并尝试使用不同的Pythons:

# file mytest.py
import os
print "PATH: ", os.environ['PATH']
Run Code Online (Sandbox Code Playgroud)

当我使用系统默认的python(/ usr/bin/python)运行时,它会为PATH打印正确的值(即我在.bash_profile文件中配置的PATH),它有点长并且包含许多目录.

但是当我选择venv的Python时,路径只减少到: /usr/bin:/bin:/usr/sbin:/sbin:/Users/myname/projects/myproj/venv/bin

如果我从终端窗口运行脚本,则不会发生这种情况.在这种情况下,它显示系统的python和venv python的正确PATH.如果我停用venv并运行,也不会发生这种情况venv/bin/python mytest.py.

任何人都知道如何在从PyCharm运行并使用venv时设置正确的PATH值?

python macos virtualenv pycharm

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

在Ubuntu中运行多个独立的Flask应用

我试图与Apache运行在单独的虚拟目录的两个或更多瓶的应用,如http://localhost/site1用于在/ var / WWW /安装MyApps / APP1http://localhost/site2用于在/ var / WWW /安装MyApps / APP 2。每个应用程序在env目录下都有自己的虚拟环境。

我首先使用Apache2(v2.4.7)重新安装了Ubuntu 14.04,然后删除了默认站点配置,sudo a2dissite 000-default并为两个应用程序添加了配置。

这是app1的conf文件,位于/etc/apache2/sites-available/app1.conf。为APP2的cofiguration是相同的,替换app2app1(和site2site1)。

<VirtualHost *:80>
    ServerName localhost
    WSGIProcessGroup site1
    WSGIDaemonProcess site1 user=myserviceuser group=myserviceuser threads=5 python-path=/var/www/myapps/app1:/var/www/myapps/app1/env/lib/python2.7/site-packages
    WSGIScriptAlias /site1 /var/www/myapps/app1/application.wsgi
    WSGIScriptReloading On
    <Directory /var/www/mysites/app1>
        WSGIApplicationGroup site1
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

然后,我使用sudo a2ensite app1(和app2)启用了每个站点,然后使用重启了服务器sudo apache2ctl restart

这些应用程序的每个application.wsgi …

apache ubuntu virtualenv flask

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