树莓派3b添加python时间同步脚本

树莓派没有电池,因此断电后系统时间会停止,直到你开机后又继续计时。

因为项目需要用到本地时间,精度要求不高不想折腾(如果需要高精度,需要安装ntp),所以考虑用python脚本同步百度的时间,精度误差很小在0.5-1秒之内,需要网络支持。

1、创建python程序

sudo nano date.py

2、写入python代码

# -*- coding: UTF-8 -*-
import os
import time
import httplib

#获取远程服务器时间并同步本地
def get_webservertime(host):
    conn=httplib.HTTPConnection(host)
    conn.request("GET", "/")
    r=conn.getresponse()
    ts=  r.getheader(‘date‘) #获取http头date部分
    ltime= time.strptime(ts[5:25], "%d %b %Y %H:%M:%S") #将GMT时间转换成北京时间
    ttime=time.localtime(time.mktime(ltime)+8*60*60) #时区+8小时
    currenttime="%u-%02u-%02u %02u:%02u:%02u"%(ttime.tm_year,ttime.tm_mon,ttime.tm_mday,ttime.tm_hour,ttime.tm_min,ttime.tm_sec)
    os.system(‘sudo date -s "‘ + currenttime  + ‘"‘)

time.sleep(20)
get_webservertime("www.baidu.com")

while 1:
    time.sleep(120)
    get_webservertime("www.baidu.com")

3、给予权限

sudo chmod 777 date.py

4、测试程序

先将系统时间改为过期时间

sudo date -s ‘2016-02-03 10:00:00‘

查看系统时间是否修改成功

sudo date

执行编写好的python程序,20秒后使用date命令查看系统时间是否同步成功!

sudo python date.py

5、将python程序加入开机自启

编辑系统启动文件

sudo nano /etc/rc.local

在 exit 0 之前加入脚本(注意程序路径)

/usr/bin/python /home/pi/date.py > /home/pi/GetDate.log

6、重启树莓派,20秒后查看系统时间是否同步成功

sudo reboot

原文地址:https://www.cnblogs.com/likai-abc/p/9178214.html

时间: 2024-09-30 16:51:33

树莓派3b添加python时间同步脚本的相关文章

为树莓派3B添加LCD1602液晶屏

树莓派3B针脚说明 LCD1602接线说明 VSS,接地VDD,接5V电源VO,液晶对比度调节,接电位器中间的引脚,电位器两边的引脚分别接5V和接地.RS,寄存器选择,接GPIO14RW,读写选择,接地,表示写模式EN,使能信号,接GPIO15D0,数据位0,4位工作模式下不用,不接D1,数据位1,4位工作模式下不用,不接D2,数据位2,4位工作模式下不用,不接D3,数据位3,4位工作模式下不用,不接D4,数据位4,接GPIO17D5,数据位5,接GPIO18D6,数据位6,接GPIO27D7,

python代码实现树莓派3b+驱动步进电机

python代码实现树莓派3b+驱动步进电机 之前买了个树莓派,刚买回来那会儿热情高涨,折腾了一段时间,然后就放哪吃灰了.前几天忽然想起来这个东西了,决定再玩玩儿,于是就从某宝上购买了一套步进电机.驱动板.东西收到后就开始折腾研究,下边来总结下折腾的结果吧. 先来说下都需要什么吧,树莓派的这一套都少不了,树莓派3b+主板.TF卡.树莓派电源.步进电机以及对应的驱动板.杜邦线6根(母对母),差不多就这么多吧. 引脚 首先,我们先看下树莓派的40个Pin都是什么功能吧!可以通过过树莓派的命令行窗口来

openvino:yolov3转换成tenserflow模型再转换成openvino模型,并用神经计算棒一代加速树莓派3b+

在转换yolo3是时遇到了问题: [ ERROR ]  List of operations that cannot be converted to IE IR:        [ ERROR ]      LeakyRelu (72)        [ ERROR ]          detector/darknet-53/Conv/LeakyRelu ........ [ ERROR ]  Part of the nodes was not translated to IE. Stoppe

用Python写脚本:通过ssh在Windows下批量管理Linux

对于超过10台以上的linux服务器,就需要考虑如何进行批量管理了. 我了解的通常的方法有以下几种: 一:在linux系统下,编写except脚本,通过ssh远程执行命令.上传下载文件等. 二:使用SecureCRT的ChatWindow功能批量发送相同命令到某一批服务器. 三:用puppy等工具管理. 其中方法一没什么问题,被管理服务器也不需要安装任何特殊程序或服务,但就是需要在linux下进行操作,日常办公PC可能大多数装的是Windows,这样可能要在虚拟机中进行操作,不太方便. 方法二:

树莓派3B 运行 LEDE(OPENWRT),使用vlan

1.树莓派3B的网卡: 内置一个无限网卡,内置一个有线以太网卡 2.下载LEDE固件: LEDE官网:https://lede-project.org/ http://downloads.lede-project.org/releases/17.01.2/targets/brcm2708/bcm2710/ 在下载界面根据这个路径选择合适的版本(目前17.01.2), lede-17.01.2-brcm2708-bcm2710-rpi-3-ext4-sdcard.img.gz 下载后解压, 使用E

postfix python发送邮件脚本配置

一.环境说明 我们通常需要发送邮件,用于报警,或邮件验证等需求,本次的环境要求如下: CentOS 6.x   最小化安装,安装postfix(一般系统安装好自带的邮件系统),如果没有请如下操作: #yum install postfix -y python 2.6+ 二.postfix简介 postfix是linux平台邮件系统,默认安装,并且自动开机运行,无需过多的配置,但有一点需要说明,postfix所 在主机绑定了备案域名则默认不会当作垃圾邮件,而所在主机没有绑定备案域名,大多邮件厂商会

树莓派学习笔记——Python SQLite插入温度记录

0 前言 本文使用python向SQLite数据库中插入树莓派温度数据,SQLite数据库中包含一张只包含三个字段的记录表--参数名称,时间和温度值.本文重点解释Python操作SQlite的具体方法,由于网上资料众多,重复部分不再复述只做到具体情况具体分析. [相关博文] [树莓派学习笔记--索引博文]--更多博文请关注. [树莓派学习笔记--获取树莓派CPU温度] [树莓派学习笔记--定时向yeelink上传树莓派CPU温度] [树莓派学习笔记--SQLite操作简述] 1 创建数据库和空表

树莓派3B+搭建Nginx流媒体服务器

树莓派3B+搭建流媒体服务器 一.硬件准备 1)树莓派3B+ 2)配套电源 3)连接到网络 二.软件安装包 1)nginx源码包nginx-1.8.1.tar.gz 下载地址: http://nginx.org/download/nginx-1.8.1.tar.gz 2)h264数据流支持包nginx_mod_h264_streaming-2.2.7.tar.gz 下载地址: http://h264.code-shop.com/download/nginx_mod_h264_streaming-

Appium环境的安装与配置,Python测试脚本测试

Appium自动化测试系列1 - Appium环境的安装与配置 发表于4个月前(2015-01-27 14:34)   阅读(803) | 评论(0) 0人收藏此文章, 我要收藏 赞0 寻找 会’偷懒’的开发者线下公开课,报名即享受免费体验云主机 摘要 看了网上很多有关Appium的安装配置贴,都写得语焉不详,不清不楚,正好打算把自动化测试框架从Robotium切换到Appium, 顺手记录一下,给大家参考.转载请注明出处. Appium 安装 配置 测试 之前一直使用Robotium做为And