自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

失业矿工的博客

人生苦短,我用python

  • 博客(30)
  • 收藏
  • 关注

原创 电报机器人开发-TelegramBot的Deep Linking用法

最近在开发telegram机器人, 发现别的机器人有这样一个功能:私聊机器人时 ,会显示一个“添加到群组”的按钮,当点击按钮时,会弹出让你选择群组的界面,选中要添加的群组后即可把机器人加入到对应的群组中,我使用的是pyrogram这个telegram机器人库,在pyrogram的文档中,没有对类似功能的介绍, 最后查看官方的机器人文档才找到,记录如下。那么怎么获得这个机器人带过来的参数呢,通过监听机器人获得信息message可以发现,又一个command数组,其中包含了对应的指令和携带的参数,

2023-05-22 16:20:04 514

原创 electron使用electron-tab实现多页签后, 如何完成通信

electron实现多页签通信

2022-10-09 17:41:56 4180 1

原创 python 原始字符串

windows下使用PIL打开图片“test.png”时报错fp = builtins.open(filename, "rb";) OSError: [Errno 22] Invalid argument: 'F:\\File_Pyt后得知是字符串问题,系统内路径为“\test.png”, \会被转义,\n, \t都有类似的问题, 果真改成est.png程序可以正常运行。print("\test")显示(一个换行)est所有人都推荐使用原始字符串解决,在字符串前面加r, r'

2022-04-21 14:45:52 1036

原创 常用的 pathlib 和 os 对比图

<div class="table-wrapper"><table style="display: table; text-align: left" data-tool="mdnice编辑器"><thead><tr style="border-top: 1px solid rgba(204, 204, 204, 1); border-right: 0; border-bottom: 0; border-left: 0; background-color: ...

2021-07-01 17:12:59 343

原创 树莓派视频流播放

树莓派安装摄像头安装注意事项摄像头插拔一定要断电更新树莓派系统前更换软件源sudo nano /etc/apt/sources.listdeb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contribdeb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contri

2021-01-14 16:38:33 453

原创 git 合并远程分支到master

使用dev分支开发,完成后合并到master分支的操作过程git checkout -b dev (创建新分支)coding->commit-push dev (代码的更改都存在dev分支下)git checkout master (合并前,切换到主分支)git pull (拉一下)git checkout de...

2019-06-13 15:46:20 7473

原创 Python装饰器的执行顺序

需求?多个装饰器作用于一个函数,比如有两个装饰器@login, @allow,想先判断用户是否登陆,然后再判断用户是否有权限一个示例解释python装饰器的执行顺序(抄别人的),这里有个问题所以记下来def decorator_a(func): print('Get in decorator_a') def inner_a(*args,**kwargs): pr...

2019-06-04 11:51:57 1138

原创 Django Rest FrameWork记录

如何关闭默认的 Browsable API使用django rest framework 开发确实方便了很多,一些简单的数据存储过程完全可以通过使用ModelSerializer+ModelViewSet+SimpleRouter或者DefaultRouter,几行代码即可生成一个增删改查的接口,但是如果在浏览去中直接访问接口,会有个自动生成的web界面,开过程中当然不错。上线后如果想关闭这个...

2019-05-07 11:18:57 201

原创 Chrome 扩展与tab页通信小记

在编写chrome扩展时可以通过content-scripts.js给tab页注入一段js,但是在content-scripts.js当中要想获取扩展中的数据或者调用扩展中的方法就必须使用message机制,搜索了很多都是过时的方法,第一时间就应该查看官方的chrome 开发手册。百度搜索到的sendRequest, runtime.sendMessage等等,都不好使,而且大都是从tab向扩展中...

2019-04-20 16:45:36 1953

原创 python当中的metaclass使用

python当中的metaclass简单介绍python中对象也是类,类作为一种特别的对象存在,特别之处就在于可以作为一个模板来生成对象(所有的类都是),暂且把python中的类称为类对象,类对象使用class定义。除了class定义, 我们也可以用type来创建一个类。type(class_name, base_class, attrs)# example NewClass = ...

2019-04-16 11:43:27 1991

原创 Odoo windows安装、运行、开发应用等过程中遇到的坑(不定期更新)

1.pip安装包时提示有些包需要visual studio C++ 编辑器,这个在网上解决办法很多,最简洁的办法是pip 直接使用二进制包安装。见https://blog.csdn.net/star9404/article/details/799158202.使用 python odoo-bin 运行项目时,仍旧提示有些包没有安装, 使用pip根据提示单独安装,有些包名字跟提示略有不...

2019-03-27 09:08:49 1852

原创 pip安装python包时遇到的问题

在windows 10种使用pip安装greenlet时,遇到下面这样一个错误,通过搜索发现有很多类似的情况发生在安装scrapy/twisted等库的时候,看起来时需要一个c++编译器。安装vstudio实在太大了,网上也给出了不少解决方案,但是下面这个是简单的,直接pip安装二进制版pip install --only-binary :all: greenletComplete ou...

2018-10-22 09:24:32 6298

转载 移动端Web界面滚动性能优化 Passive event listeners

最近更新了ios11.3,项目上发现这么一个问题,“我的”页面和两个列表页的滚动出现了问题,滚动时候不仅滚动了希望滚动的部分,整体的页面也跟随者上下滚动,整个页面非常卡顿。这两个页面都用了touch事件 控制台打印如下警告:[Intervention] Unable to preventDefault inside passive event listener due to target...

2018-09-14 14:44:44 266

原创 Ajax跨域调接口并用写入Cookie,单点登陆最简单实现

目前有两个域名, www.a.com ,www.b.com,要通过cookie存储用户信息,实现单点登陆, 在进入a,b网站后,首先判断当前cookie中有没有user信息, 如果有user信息,则表明当前用户已经登陆过, 如果没有cookie信息,前端调用登陆接口并将返回的用户信息记录在cookie中。目前,登陆喝认证过程已经分别在a,b网站实现,现在想实现从a站登陆后,同时在b站也写入cook...

2018-09-13 14:12:13 6775 3

原创 HTML5中的postmessage 解决跨域小记

Window.postMessage API的功能是允许程序员跨域在两个窗口/frames间发送数据信息。基本上,它就像跨域的ajax,但是它不是浏览器和服务器之间的交互,它是两个客户端之间的通信。(处理ie6、ie7外,其他浏览器都支持)postMessage方法允许来自不同源的脚本采用异步方式进行有限的通信,可以实现跨文本文档、多窗口,跨域消息传递。现在有 a.html, b.html两个页面...

2018-07-11 17:31:58 1028

原创 javascript正则表达式整理

正则表达式有两种创建方式, 第一种生成一个RegExp对象,第二种生成一个string对象:var regObj = new RegExp("pattern",[,"flags"]);var regObj = /pattern/[flags]; //该方式不能用引号将pattern和flags括起来//pattern:必选项,正则表达式的字符串;//flags...

2018-06-19 14:18:37 192

转载 How the heck does async/await work in Python 3.5?

原文作者 : Brett CannonBeing a core developer of Python has made me want to understand how the language generally works. I realize there will always be obscure corners where I don't know every intricate d...

2018-05-26 08:58:32 540

原创 javascript中的循环

Java script中循环、遍历的方法汇总

2018-03-27 09:50:48 863 1

原创 python调用AT指令操作短信猫

短信猫是一种可以通过串口通信来操作发送短信的设备, 在python中, 要想通过COM通信, 需要使用serial包。通过使用serial向短信猫发送AT指令的方式来操作短信猫,网上有不少python来操作短信猫的例子,能找到的主要有两种代码:1, 使用控件发送短信, 代码一般看起来是这样的#! /usr/bin/env python#coding=gbkimport sysim

2016-11-30 11:37:28 4330 4

原创 在Django中使用DISTINCT

有时候想用distinct去掉queryset中的重复项,看django文章中是这么说的>>> Author.objects.distinct()[...]>>> Entry.objects.order_by('pub_date').distinct('pub_date')[...]>>> Entry.objects.order_by('blog').distinct('blo

2016-07-12 13:01:04 6751

原创 Django自带的加密算法及加密模块

Django 内置的User类提供了用户密码的存储、验证、修改等功能,可以很方便你的给用户提供密码服务。默认的Ddjango使用pbkdf2_sha256方式来存储和管理用的密码,当然是可以自定义的。Django 通过PASSWORD_HASHERS 设置选择要使用的算法。下面有一个列表,列出了Django 支持的哈希算法类。列表的第一个元素 (即settings.PASSWORD_HAS

2016-01-22 16:31:52 17359

原创 如何使用Createjs来编写HTML5游戏(八) 通过继承扩展EaselJS中的基础元素

从我第一天了解到javascript开始,就听说在这里是没有类的。其实一开始我是沮丧的,尽管我并不知道有没有“类”对编程究竟有多大影响,不过有缺憾总是让人感觉遗憾,哪怕这是一个你可能永远不会用到的东西。确实,在没有任何自定义“类”的情况下,也能做出一款打飞机的游戏。我们用到的是EaselJS中所定义的一些可以重复使用的对象,并且这些对象包含一些类似于类的行为,比如可以new 一个新的对象实例。...

2015-08-10 18:04:12 3288 1

原创 如何使用Createjs来编写HTML5游戏(七)完成一个简单的打飞机游戏(下)

有了游戏中需要的所有元素(战机、敌机、星空、子弹),并且飞机可以响应按键左右的移动,剩下的东西就是让子弹动起来,并且检测游戏内各个元素的碰撞情况。首先是星空的移动, 让星空从屏幕上方向下移动,这样可以造成一种飞机一直在前进的相对的错觉,所有的星星事先都已经保存在一个数组当中,只要通过循环,取出其中的每个星星,在tick中重设Y坐标就可以了。

2015-08-09 23:40:41 5550 3

原创 如何使用Createjs来编写HTML5游戏(六)完成一个简单的打飞机游戏(上)

打飞机游戏雷电是一款经典的空战游戏,利用已知的CreateJS知识就可以很容易的做出一款类似的打飞机游戏。首先,弄一些游戏需要的资源,做这样的一个小游戏,首先需要一架玩家操控的飞机图片,然后是可以击落的敌机图片,连续的爆炸图片来组成一个爆炸的动画Sprite,开枪的声音,爆炸的声音,星空的背景,然后使用TexturePacker把这些图片合并成一张图片,并获得一个json文件,其中的数据可以用

2015-08-08 13:31:00 7459 5

原创 如何使用Createjs来编写HTML5游戏(五)PreloadJS和SoundJS

CreateJS最后两个部分,PreloadJS用来加载并统一管理你游戏中用到资源,图片,json文件等等,而SoundJS用来播放声音,两者的用法都非常的简单而且固定。

2015-08-07 00:02:18 5525

原创 如何使用Createjs来编写HTML5游戏(四)TweenJS和Tick动画

CreateJS包含4个部分,EaselJS、TweenJS、PreloadJS、SoundJS,其中最主要的部分EaselJS包含了开发Html5游戏的所有功能,仅仅使用EaselJS几乎可以完成所有的开发工作,其余三项可以看作EaselJS的辅助工具。比如响应tick事件然后改变元素坐标就可以实现动画功能,而使用TweenJS来创建补间动画,则可以省去你很多代码,简化了操作。一个简单的ti

2015-08-06 21:39:09 17729

原创 如何使用Createjs来编写HTML5游戏(三)使用EaselJS中的制作Sprite类制作

动画的制作原理据说是由于人的视觉残留效应,连续播放一系列的静止图片,即可获得一段动画,每张图片可以称作动画的一帧,在EaselJS中,提供了一个Sprites类,可以用来创建动画。创建Sprite同创建其他EaselJS对象实例一样,只需要调用new createjs.Sprite(spriteSheet);

2015-08-05 19:47:05 9490 2

原创 如何使用Createjs来编写HTML5游戏(二)使用EaselJS处理图片

如何使用EaselJS载入图片并进行简单的处理 使用EaselJS中的Shape()来创建图形,EaselJS中还提供Bitmap可以很方便的载入图片,同Shape一样只需要创建一个Bitmap。var bg = new createjs.Bitmap("./background.png");stage.addChild(bg);stage.update();直接创建并导入到S

2015-08-04 20:30:21 8123 3

原创 如何使用Createjs来编写HTML5游戏(一)EaselJS简介

游戏框架CreateJS中的EaselJS介绍,初级入门。包含如何创建文字,图形,事件监听等,并通过这些组成一些简单的游戏和工具,HTML5编程初学入门。

2015-08-03 20:00:55 12523 3

转载 我是如何从矿工成为程序员的

先转载一篇非常励志的文章,我也是名矿工,曾经是,后来国有变成私有,领导变成老板,老板掏空企业,企业玩完,矿工失业。后来看到这篇文章。你是否为你将来想从事的工作和事业做出了足够的努力?我将要给你讲述一个真实的故事,一个叫 Mircea Goia 的煤矿工人转行去追求他真正想要的工作的故事:-我来自于一个东欧国家。我在一个煤矿里工作了很多年(在一个很深的矿井里)。每天我都处在危险中,那些年都是

2015-07-07 19:50:22 1085 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除