分类目录归档:Python

使用树莓派和OpenCV 实现家庭监控和移动目标探测


本篇文章主要是分享使用opencv和树莓派实现的移动目标探测,所以需要有opencv环境,另外你的电脑必须有摄像头支持。 具体参考自伯乐在线的 这篇文章 具体内容大家可以参考下原文,我在其基础上大概修改了下,下面是代码:

import datetime
import time
import cv2
import logging
import imutils
import os

lastSaveTime = datetime.datetime.now()
motionCounter = 0
path = os.path.split(os.path.realpath(__file__))[...

Read more

Django 2.0升级小记


备受期待的django 2.0已经发布了,最大的一个变化就是不再支持python2.x版本了,另外还有在使用方面有了一些变化,下面就介绍下我在升级的时候遇到的错误。

  • from django.core.urlresolvers import reverse
    

    变成了

    from django.urls import reverse
    
  • settings.py文件,MIDDLEWARE_CLASSES更改成了MIDDLEWARE

  • django.shortcuts.render_to_response()方法已经被弃用了,现在使用django.shortcuts.render()方法。

  • ...

Read more

使用python和opencv实现简单的网络摄像头


这个网络摄像头需要一个客户端和服务端,客户端使用opencv捕捉摄像头,通过socket将图片流传输到服务端,服务端接受图片流,使用HTTPServer渲染生成一个简单的网页,将图片流用mjpeg的方式传输到浏览器中,这样就可以直接用浏览器来查看摄像头视频了。主要的实现方式就是这样的,下面详细介绍下.

安装依赖

首先需要在客户端安装opencv,安装方式可以Google下,这里就不再赘述了,服务端需要安装pillownumpy这两个模块。

实现代码

首先是客户端的代码:

import io
import socket
import struct
import time
import d...

Read more

使用python连接hive


首先需要安装包:

pip install pyhive[hive]

如果安装报错的话执行:

sudo apt-get install libsasl2-dev

再安装下。

然后需要启动hive服务:

hive --service hiveserver2

修改hive验证方式: 在hive-site.xml中:

<property>
   <name>hive.server2.authentication</name>
   <value>NOSASL</value>
   <description>
     ...

Read more

使用Hadoop的MapReduce和jieba分词统计西游记中的词频


这个功能主要是使用python的jieba分词模块来分词,然后使用mapreduce来统计,其实功能很简单,但是由于刚开始接触使用hadoop,出现了各种问题,这里记录下。
在hadoop执行的mapreduce程序时,使用python非系统模块的话会出现找不到包的错误,网上找到了一种解决方案,使用系统内置的zipimport模块,使用方法: 首先将该模块的所有文件复制到当前目录,然后执行:

zip -r jieba.zip jieba
mv jieba.zip jieba.mod

然后代码中就可以这样引入:

import sys

sys.path.append('./...

Read more

使用 Python 编写 Hadoop MapReduce 程序


Hadoop 框架使用 Java 开发的,对 Java 进行了原生的支持,不过对于其它语言也提供了 API 支持,如 Python 、 C++ 、 Perl 、 Ruby 等。这个工具就是 Hadoop Streaming ,顾名思义, Streaming 就是 Pipe 操作,说起 pipe ,大家肯定不陌生。最原生的 Python 支持是需要 Jython 支持的,不过这里有额外的方法来实现,大家如果只是使用的话,不用纠结 Jython 转换的问题。

最容易的 Hadoop 编程模型就是 Mapper 和 Reducer 的编写,这种编程模型大大降低了我们对于并发、同步、容错、一致性...

Read more

本站支持微信公众号了


在最新释出的v4.0版本中,本站集成了微信公众号的功能,现在可以使用微信公众号来管理你的vps了。
默认情况下是图灵机器人自动回复的,输入admin之后开始验证密码,通过后进入命令模式,可以通过在后台配置一些命令来在这里执行并返回结果。

当然,也集成了一些基本的博客文章搜索等功能,后续会集成一些常用等api进来。 欢迎大家扫码关注本站。 qrcode

Read more

使用树莓派实现WebCamera实时监控


配件就一个可以跑起来的树莓派,然后再有一个淘宝上的那种摄像头模块就可以了。
效果如下图:
WebCamera 这样就可以开着树莓派,然后只要通过浏览器就可以实时监控到你感兴趣的地方,代码也挺简单的,如下:

基于python3,需要安装picamera

pip install picamera

下面是示例代码:

#!/usr/bin/env python
# encoding: utf-8


"""
@version: ??
@author: liangliangyy
@license: MIT Licence
@contact: liangliangyy@gmail.c...

Read more

Python虚拟环境设置


virtualenv

virtualenv 是一个可以在同一计算机中隔离多个python版本的工具。有时,两个不同的项目可能需要不同版本的python,如 python2.6.6 / python3.0 ,但是如果都装到一起,经常会导致问题。所以需要一个工具能够将这两种或几种不同版本的环境隔离开来,需要哪个版本就切换到哪个版本做为默认版本。virtualenv 既是满足这个需求的工具。它能够用于创建独立的Python环境,多个Python相互独立,互不影响,能够:

  • 在没有权限的情况下安装新套件
  • 不同应用可以使用不同的套件版本
  • 套件升级不影响其他应用

安装: pip install...

Read more

在Django中使用缓存


Django 是动态网站,一般来说需要实时地生成访问的网页,展示给访问者,这样,内容可以随时变化,但是从数据库读多次把所需要的数据取出来,要比从内存或者硬盘等一次读出来 付出的成本大很多。而使用缓存的话,可以将数据保存在缓存中,下次访问的时候直接从缓存中获得数据,而不用去请求后端数据库,这样服务器可以很快的响应请求,从而提高加载速度。下面简单介绍下Django中的缓存系统。

缓存配置

Django支持多种缓存,例如本地文件缓存,数据库缓存,memcache,locmem等,下面分别简单介绍下:

文件缓存

这个很简单,就是将数据缓存在指定的目录中。配置如下:

CACHES = {
    ...

Read more