1.?自动自动Զ???Դ??
2.考勤作弊APP创始人二审改判四年,法院为何会改判?
3.djangoå¦ä½å°è£
apiï¼djangoå°è£
exeï¼
4.考勤作弊APP创始人二审改判4年,打卡打这样的源码源码判决是否太轻了?
5.树莓派实战:微信机器人(itchat实现)
6.考勤作弊APP创始人二审改判4年,你赞成这一判决吗?
?Զ???Դ??
撰写个人日志的技巧与Excel模板的应用
在追寻高效日志记录的旅程中,不少人在面对纸质笔记本时,打卡打都曾渴望拥有快速定位功能,源码源码淼迈云源码如Ctrl+F。自动自动在年的打卡打年终总结时刻,这种怀念尤为强烈。源码源码为了满足这一需求,自动自动某日,打卡打借助VBA的源码源码助力,经过多轮迭代,自动自动一个个人年度日志记录跟踪表应运而生。打卡打
该模板围绕工作、源码源码学习与生活三大维度,巧妙融入了4个好习惯的打卡记录。其最大亮点在于,通过Ctrl+F功能实现快速定位,支持自适应无限记录,极大提升了日志管理效率。
主要功能概览如下:
1)点击保存选项,表格会自动调整至适宜高度。
2)点击记录按钮,光标将自动跳转至空白记录区。
3)围绕工作、学习、邮件源码地址生活以及4个好习惯的打卡记录,日志内容一目了然,轻松实现日报、周报、月报的整合。
欲获取此模板的源码,请回复“小火箭”。
推荐阅读:
了解一行代码的多功能性
掌握个Excel小技巧,让你的工作更加高效
结语:在深入探索后,为何不加入公众号“Excel小火箭”,一个专注于技巧与源码分享的社区,共同探索更多可能。
考勤作弊APP创始人二审改判四年,法院为何会改判?
我认为法院之所以在二审判决中改判原因是一审法院是根据该名男子破坏计算机信息系统罪进行量刑,而二审法院则认为,这款软件不属于刑法中的破坏性程序,所以该名男子虽然依然是涉嫌这项罪名,但是罪行减轻了,随之在二审判决中就判处有期徒刑4年决定。我认为法院在这次量刑中改判的十分合理,毕竟这款软件并没有在网络上造成恶性传播,也没有攻击网络程序,没有造成人员信息丢失,泄露甚至重大互联网恶性事件出现,只是让用户个人使用时会通过修改定位功能来满足个人目的,这种目的前端模板源码满足对社会并没有危害性,也没有给社会带来隐患以及损失,所以根据这种情况,二审法院所判的4年有期徒刑属于减刑判决,认为软件不属于破坏性程序,所以改判。
一、案件始末是什么?
在这起案件中,该男子通过购买其他公司软件源代码,并且修改数据后制作成了一款名叫大牛助手的APP,并在网络上售卖传播,软件的主要盈利方式是通过用户下载后包月或者包年会员方式来进行收费,软件其实并没有什么问题,只不过用户在下载软件后可以隐藏个人定位,并且可以自行修改个人位置,在法律上认为该名男子软件属于破坏计算机信息系统罪,所以一审判决该名男子判处有期徒刑5年6个月,男子表示不服进行二次申诉,二次法院认为该名男子软件不属于法律中的破坏性程序,于是将判决减轻到有期徒刑4年。
二、希望该名男子汲取教训。
我认为该名男子的行为已经涉嫌法律,在软件制作过程中,自己已经可以预见性的知道后果,自己在购买软件源代码后再对源代码进行修改,开发的源码啥意思过程中指定了软件可以遮挡个人定位以及修改个人定位,软件主要功能也是这样,男子内心明白用户会使用软件修改个人定位前提下,依然开了会员并以此谋利,所以这种方式属于违法犯罪。
三、法院判决非常公道。
我认为这次法院判决非常公平公正,虽然律师认为该男子可以做无罪辩解,但是我认为该男子在开发软件时,就是利用软件可以修改定位的这一特性来进行牟利,其开会员以及包年包月的付费方式,就决定了它是以这种软件特性来进行谋利,他自己内心清楚用户会使用这款软件做什么,但他没有下架软件,也没有进行阻拦,也没有提示,所以该男子的行为属于破坏网络信息系统罪,法院判决也十分公平,考虑到软件不属于破坏性程序,已经进行减刑。
djangoå¦ä½å°è£ apiï¼djangoå°è£ exeï¼
æ¬ç¯æç« ç»å¤§å®¶è°è°djangoå¦ä½å°è£ apiï¼ä»¥ådjangoå°è£ exe对åºçç¥è¯ç¹ï¼å¸æ对åä½ææ帮å©ï¼ä¸è¦å¿äºæ¶èæ¬ç«åãæ¬æç®å½ä¸è§ï¼1ãï¼äºï¼DjangoRESTå®è·µï¼æç®åçRESTAPIå®ç°2ãPython3.7é åDjango2.0æ¥è°ç¨éé(dingding)å¨çº¿apiå®æ¶çæµåå·¥èå¤æå¡æ åµ3ãDjangoRESTframeworkæ¡æ¶ä¹GET,POST,PUT,PATCH,DELETEçAPI请æ±æ¥å£è®¾è®¡ï¼äºï¼DjangoRESTå®è·µï¼æç®åçRESTAPIå®ç°æ¬å°è大æ¦è¦è±è´¹åéã
å¨åé¢ï¼æ们已ç»å¦ä¼äºDjangoå¦ä½è·å¾HTTP请æ±ä¸çå 容ï¼ä»¥åå¦ä½è·åHTTP请æ±çbodyãæ¥ä¸æ¥æ们就æ¥åä¸ä¸ªæç®åçAPIãè¿ä¸ªAPIè¦æ±å¨è¯·æ±çHTTPbodyä¸æ¾å ¥JSONæ ¼å¼çææ¬ï¼å¹¶å¨è§£æææ¬åè¿è¡å¤çï¼è¿åJSONæ ¼å¼çæ°æ®ã
æ们å®ä¹APIçURL为/api/sum/ï¼åè½æ¯ä¸ºä¸¤ä¸ªæ°æ±åï¼å¹¶è¿åã
requestä¸bodyçæ ¼å¼ä¸ºï¼
responseçæ ¼å¼ä¸ºï¼
responseä¸ï¼æ们çæ°æ®ç»æç¨å¾®æç¹å¤æã
ä¹åæ们ææçRESTAPIé½ä¼ä»¥è¿ç§ç»ä¸çæ ¼å¼è¿åæ°æ®ï¼ä¸¤ä¸ªä¸åRESTAPIæè¿åå 容ç主è¦åºå«å¨dataåä¸ã
å¨ï¼ä¸ï¼ä¸ï¼æ们建ç«äºä¸ä¸ªå«åtask_platformçDjango项ç®ãç®å½ç»æå¦ä¸ï¼
è¿å ¥Django项ç®ç®å½ï¼å¹¶ç¼è¾task_platformä¸çviews.pyæ件ã
å ¶ä¸ï¼
ç¼è¾task_platform/urls.pyï¼å°æ们ååå®ç°çAPIå¤çå½æ°å å ¥å°è·¯ç±è¡¨ä¸ã
è¿è¡Djangoserverï¼
ç¨Postman模æ请æ±ï¼å¯ä»¥çå°ï¼
ç»è¿ç»ä¹ ï¼æ们已ç»äºè§£å¦ä½å®ç°ä¸ä¸ªç®åçRESTAPIäºï¼æ们ä¹åçAPIé½æ¯å»ºç«å¨è¿ä¸ªé讯模åä¹ä¸çï¼å½ç¶è¿æä¸äºä½¿ç¨GETæ¹æ³çAPIï¼ãå¨åé¢ï¼æ们å°ççï¼å¦ä½éè¿è¿ç§æ¨¡å¼ï¼å®ç°ä¸ä¸ªç¨æ·è®¤è¯ç³»ç»çRESTAPIã
Python3.7é åDjango2.0æ¥è°ç¨éé(dingding)å¨çº¿apiå®æ¶çæµåå·¥èå¤æå¡æ åµæ°å ç«æ æé´ï¼å¤§å¤æ°å ¬å¸ä¸ºäºé¿å 交åææé½æå¤æå°çéç¨äºè¿ç¨åå ¬çæ¹å¼ï¼è¿æ¾ç¶æ¯ä¸ä¸ªææºçéæ©ï¼åºæ¬ä¸éé(dingding)ä½ä¸ºä¸ä¸ªè¿ç¨åå ¬å¹³å°æ¥ç¨çè¯ï¼è½ç¶å·®å¼ºäººæï¼ä½æ¯å¥ä½å¸é¢ä¸æ²¡æå¥æ´å¥½çéæ©ï¼ç¬åéæå°åï¼ä¹è¿æ¯å¯ä»¥ååç¨çï¼ä¸è¿è¿ç¨åå ¬æ个é®é¢ï¼å°±æ¯æ¯å¤©éè¦æ£æ¥åå·¥çèå¤ï¼å± 家åå ¬è½ç¶çµæ´»ï¼ä½æ¯å¤§å®¶ç©¶ç«æ没æåå ¬ï¼åæ¯å¦å¤ä¸åäºï¼ééæä¾ç解å³æ¹æ¡å°±æ¯èå¤å¨çº¿æå¡åè½ï¼ä½æ¯æ£æ¥åºå¤ééå¨ç§»å¨ç«¯å°±æç¹è´¹å²ï¼éè¦å¨ééappéç¹å»è³å°5次,è¿ä¸è½å®æ¶å·æ°ï¼pc端çééoaç³»ç»åçæ´çï¼è¿ä¸å¦ç§»å¨ç«¯æ¥å¾æ¹ä¾¿ï¼å¦å¤å¦æä½ å¨ä¸å®¶ä¸å人çä¼ä¸éï¼è¿å®¶ä¼ä¸æ大大å°å°å å个é¨é¨ï¼ä½ åé常åéçæ ä»»è¿å®¶å ¬å¸ç人äºä¸»ç®¡ï¼æ¯å¤©æé¨é¨æ¥åºåå·¥èå¤æ¥è¡¨å°±ä¸æ¯ä¸ä»¶å®¹æäºäºï¼æ以å©ç¨ééå¼æ¾çæ¥å£ï¼ä½¿ç¨Djangoèªå·±æé ä¸å¥å®æ¶çæ§åå·¥èå¤çwebå¹³å°æ¯æ们æ¬æ¬¡çç®çã
项ç®èæ¯æ¯ä¸å®¶æ®éç§æå ¬å¸ï¼å¤§æ¦æäºä¸ªé¨é¨ï¼æ¯ä¸ªé¨é¨äººå·¦å³
é¦å è¿å ¥ééå¼æ¾å¹³å°:open-dev.dingtalk.com
å¨ä¼ä¸å é¨å¼åä¸ï¼éæ©å°ç¨åºï¼æ°å»ºä¸ä¸ªå°ç¨åºåºç¨ï¼è¿éå ¶å®ä¹è¿æå«çéæ©ï¼æ¯å¦h5å¾®åºç¨ï¼ä¸»è¦æ¯å°ç¨åºå ¼å®¹æ§æ´å¥½ä¸ç¹ã
å¡«ååºç¨çå称ãç®ä»ãLogoçåºæ¬ä¿¡æ¯è¿äºæä¸ä¸è¡¨ï¼æç §è¦æ±å¡«åå³å¯ï¼ä¹ä¸å¿ éå¾å¡«åçå®ä¿¡æ¯ï¼è¿éæ个åå°±æ¯ä¸å®ä¸è¦å¿äºé ç½®å®å ¨ååæè ipï¼å®å ¨ååæ¯å½æ们çæ£æµå¹³å°ä¸çº¿çæ¶åé¨ç½²çååï¼åºç¨å¯ä»¥è·æå®çååè¿è¡ç½ç»éä¿¡ï¼å¦æä¸é ç½®çè¯ï¼è¯·æ±ééæ¥å£ä¼æ¥é误ã
å¦å¤è¿æä¸ä¸ªåï¼ä¹å°±æ¯ééé»è®¤å¼æ¾çæ¥å£ä» éäºåºç¡æéæ¥å£
å¦æéè¦èå¤æè ç¾å°æ¥å£çè¯ï¼è¿å¾åç¬ç¹å»ç³è¯·ï¼è¿å°±æç¹è®©äººçä¸æäºï¼é£ä¹å¤æ¥å£ï¼å ¨é½å¾é ç¨é¼ æ ç¹å»å¼éï¼ä¸å¼éå°±ç¨ä¸äºï¼è¿ä¸ªç¨æ·ä½éªçæ¯è®©äººéå¸¸é ¸ç½ï¼äº§å设计æè¿æ ·ï¼ééçpmé¾è¾å ¶åã
OKï¼åç½®åå¤å·¥ä½å°±å·²ç»å°±ç»ªäºï¼ç°å¨æ们åªè¦æ ¹æ®å®æ¹ææ¡£æ¥åæ¥å£å°±å¯ä»¥äºï¼éæ©æå¡ç«¯apiææ¡£ï¼
ééèå¤æå¡çæ¥å£è¯´ææ¯è¿æ ·çï¼
è¿éæ¯ä¸ªæ¥å£é½éè¦ä¸ä¸ªaccess_tokenç¨æ¥é´æï¼è¿ä¸ªtokenæ¯ç¨idåç§é¥éè¿æ¥å£äº¤æ¢åæ¥çï¼å ·ä½å¨åºç¨è¯¦æ éå¯ä»¥è·å
è¿éæ们å°è£ ææ¹æ³
æå®äºtokenï¼è¿éè¦è·åæ¨çé¨é¨ä¸ææåå·¥çåå·¥idï¼å 为èå¤æ¥å£åæ°åªè½æ¥ååå·¥idï¼èéé¨é¨id
æå请æ±èå¤æ¥å£å³å¯
å®æ´çåå°Djangoåå°æ¥å£
è¿æ ·ï¼å°±å¯ä»¥æå¿«çéè¿çº¿ä¸å¹³å°æ¥å®æ¶çæµé¨é¨åå·¥èå¤äºï¼æææ¯è¿æ ·ç:
DjangoRESTframeworkæ¡æ¶ä¹GET,POST,PUT,PATCH,DELETEçAPI请æ±æ¥å£è®¾è®¡
ä¸ãAPIæ¥å£åè½éæ±ï¼è®¾è®¡ä¸äºæ¥å£URLï¼è®©å端/客æ·è¯·æ±è¿ä¸ªURLå»è·åæ°æ®å¹¶æ¾ç¤ºï¼æ´æ¹æ°æ®ï¼å¢å æ¹æ¥ï¼ï¼è¾¾å°åå端å离çææ
äºã设计é»è¾ï¼éè¿httpå议请æ±æ¹å¼GETãPOSTãPUTãPATCHãDELETE设计符åRESTfulè§èçapiæ¥å£ä¹å°±æ¯URL
ä¸ãç®ææºç ï¼
3.åºååserializers
#å¯¼å ¥æ¨¡åç±»årest_frameworkåºåå模åserializers
from.modelsimportArticle
fromrest_frameworkimportserializers
#å®ä¹åºååç±»ï¼ä½¿ç¨ç»§æ¿ModelSerializeræ¹æ³
classArticleSerializer(serializers.ModelSerializer):
classMeta:
model=Article#æå®åºååç模åç±»
fields='_all_'#éååºååå段ï¼æ¤å¤å¯èªè¡éåå段
4.è§å¾å½æ°views
fromdjango.httpimportHttpResponse
fromdjango.views.decorators.csrfimportcsrf_exempt
from.modelsimportArticle
from.serializersimportArticleSerializer
fromrest_framework.renderersimportJSONRenderer
fromrest_framework.parsersimportJSONParser
#è°ç¨csrfè£ é¥°å¨csrf_exempt模åï¼è§£å³è·¨å访é®é®é¢
#JSONRendererå®å°Pythonçdict转æ¢ä¸ºJSONè¿åç»å®¢æ·ç«¯
#JSONParserè´è´£å°è¯·æ±æ¥æ¶çJSONæ°æ®è½¬æ¢ä¸ºdict
#åæ³ä¸
#å¨éè¦è·¨åçè§å¾ä¸è°ç¨è£ 饰å¨@csrf_exempt
@csrf_exempt
defarticle_list(request):
ifrequest.method=='GET':
arts=Article.objects.all()#è·å模åç±»æ°æ®
ser=ArticleSerializer(instance=arts,many=True)#åºååæ°æ®instance
#ä¸ä¸æ¥ç¨rest_frameworkæ¹æ³éçJSONRendereræ¹æ³æ¸²ææ°æ®
json_data=JSONRenderer().render(ser.data)
returnHttpResponse(json_data,content_type='application/json',status=)
#åæ³äº
classJSONResponse(HttpResponse):
def_init(self,data,**kwargs):
content=JSONRenderer().render(data)
kwargs['content_type']='application/json'
super(JSONResponse,self)._init(content,**kwargs)
#æ ¹æ®idè¿è¡å¢å æ¹æä½æ¥å£
@csrf_exempt
defarticle_detail(request,id):
try:
art=Article.objects.get(id=id)
exceptArticle.DoesNotExistase:
returnHttpResponse(status=)
å¤æ³¨ï¼
*åæ³äºä¸å®ä¹JSONResponseç±»å°è¿åçæ°æ®dataä¸content_typeè¿åç±»ååäºå°è£
*APIæ¥å£
GET/POST
GET/PUT/PATCH/DELETE
*Postmanæµè¯ææå¾
djangoå¦ä½å°è£ apiçä»ç»å°±èå°è¿éå§ï¼æè°¢ä½ è±æ¶é´é 读æ¬ç«å 容ï¼æ´å¤å ³äºdjangoå°è£ exeãdjangoå¦ä½å°è£ apiçä¿¡æ¯å«å¿äºå¨æ¬ç«è¿è¡æ¥æ¾åã
考勤作弊APP创始人二审改判4年,这样的判决是否太轻了?
我觉得这样的判决非常合理,毕竟这个软件并没有给社会带来危害,并没有给整个计算机网络系统带来破坏性,所以这样的判决还是非常公正合理。我认为这一个软件APP并没有社会危害性,触漫源码它只是通过不改变源代码的情况下,通过虚拟位置的信息修改了客户个人的位置,客户不想暴露自己位置时,就可以对位置进行遮挡,当客户觉得这个位置不合适时,可以随意进行修改,并没有给社会带来危害性,也没有利用软件特性带来严重后果,并且在这一起案件中,该公司的整个营业性收入并不是很高。
一、案件始末是什么?
整个案情非常简单,嫌疑人制作的这一款软件名字是大牛助手是一款APP通过APP客户可以进行一个前期试用,试用期过后客户需要缴纳包月费用或者包年费用费用收取并不高,客户通过APP可以对个人位置进行遮挡,别人看不到用户位置,当客户觉得对位置信息需要修改时,可以通过软件修改个人位置信息,模拟任何一个地方的定位,在地图上可以随意定位,法院认为该软件已经影响了整个计算机信息系统属于破坏计算机信息系统罪。所以对该软件创始人进行逮捕并判刑。
二、网络上议论纷纷。
我看到网络上很多网友在留言并且讨论这些案件,很多人认为该软件创始人并没有利用这个软件进行任何违法犯罪行为,他只是制作了一款可以修改定位的APP而已,至于用户如何使用是用户的事情,和软件创始人并没有任何关系,法院的判决有些连带责任过重,并且啊,该名创始人的软件并没有对社会造成危害,也没有造成重大损失,所以判刑有些过重,也有些人认为很多人利用软件修改定位打卡骗取工资,造成了很不好的影响,所以应该判刑。
三、应该双面性看待这个问题。
我觉得看待这个问题应该双面性,如果说软件开发者有些无辜,其实这种双法也并不是很准确,因为软件开发者在开发这款软件是已经会前期预料的,客户会利用软件性质进行修改定位,但是他并没有制止,并且利用这个功能开始进行包月,甚至包年公司利用这些功能进行收入,说明已经前期预料到,会有人利用这款软件的功能进行不恰当使用,虽然软件的开发和其他日常定位的APP一样,但是在功能县志上却有些不一样,所以这样的判刑也非常准确。
树莓派实战:微信机器人(itchat实现)
本文介绍如何利用树莓派和开源库itchat构建微信机器人,实现自动回复、AI聊天、定时发送天气预报以及控制摄像头等实用功能。树莓派作为小时在线的server,使得微信机器人的应用范围更加广泛。
itchat是一个用于微信个人号接口的开源库,通过少量代码(不足行)即可实现微信机器人功能。其原理是模拟微信网页版客户端,通过HTTP协议进行通信。具体实现细节可以参考github上的源码。
首先,实现自动回复功能。注册消息处理函数以应对不同类型的微信消息,包括文本、、语音、视频等。默认处理单聊消息,同时可以扩展处理群聊消息。程序启动后,通过扫描二维码登录,然后自动运行。为避免发送消息给自己无效,可以通过发送消息给文件传输助手filehelper实现相同效果。
接下来,实现AI聊天功能。结合AI本地库或在线API,如青云客,可实现基于关键字命令的对话功能。对于自由对话可能效果不佳。在实现AI聊天功能的基础上,可以进一步获取天气预报信息,通过AI请求传递特定地点的天气查询。
定时发送天气预报功能需要解决定时任务执行和消息发送问题。Python库apscheduler可实现定时任务调度,而itchat提供便捷的API来搜索特定群。
控制摄像头功能则包括通过USB接口连接摄像头、使用fswebcam进行拍照以及使用linphone进行视频通话。fswebcam是用于拍照的命令行工具,而linphone是一个开源的IP电话客户端,适合在树莓派上使用。
完整代码已上传至GitHub,提供实用示例和详细的实现步骤。除了上述功能,还增加了健身打卡、睡觉打卡等实用功能,使得微信机器人的功能越来越丰富。
参考itchat提供的教程文档,可以找到更多关于微信机器人功能的实现和扩展。通过利用树莓派和itchat,开发微信机器人成为了可能,为自动化和智能化应用提供了新的途径。
考勤作弊APP创始人二审改判4年,你赞成这一判决吗?
随着社会的发展、任何单位和组织都有一定的制度、这样才能保证工作的正常进行、比如很多企业都实行打卡制、需要你到现场进行录入头像或者其他的方式、才能算作里来了或者走了、而我们知道没有任何程序是不可攻破的、毕竟“天外有天、人外有人”、前段时间一款非常火的App被下架、因为他被购买者用来作弊打卡、给很多的企业和单位造成了损失、而这个考勤作弊App的创始人二审改判四年、你赞成这一判决吗?首先不赞成这一判决、因为我们知道这个App开发出来并不是为了进行考勤作弊、而是被购买者用来做了这方面的工作、而且他的源代码只是改变了服务器的位置信息、这是一项技术、对于开发者来说被用于违法犯罪还应该追究这些使用者的责任、毕竟还要看他是否从内心就是去做考勤作弊的初衷。现代化的发展、涌现了一批又一批的人才、著名学者曾经说过“改变未来的人可以来自任何的地方”、就像以前我们没有汽车、而发明汽车的莱特兄弟也不过初中毕业、特别是现代技术的发展、不仅让我们的生活更加的便利、更让很多事情变得复杂、我们知道违法犯罪不能去做、但并不代表你所创造的东西没有去违法犯罪、就比如我们平时做菜所用的菜刀、它可以帮我们更方便的烹饪食物、但是也有持刀杀人抢劫的、我们并不能去怪罪厂家的错误、而在这一次考勤作弊App创始人被判两年的案件中、很多人认为这一项技术并没有直接指向考勤作弊的功能、创始人也没有在功能上解释和说明这一些、而他所给相关单位和企业带来的损失是那些个人的行为、所以不赞成这一次的判决、也希望这些人的初衷并不是去违法犯罪、而是被误会、毕竟技术是改变世界用在正道的东西。
我们都知道“人之初性本善”、但其实人是否是善良的并不能完全确定、或者说出生的时候应该是一张白纸、只是在后面的教育和交流中改变他、所以应该从这些方面来考虑。