為什么會有寫這個程序的想法呢?
創新互聯建站主營管城網站建設的網絡公司,主營網站建設方案,成都app軟件開發公司,管城h5成都微信小程序搭建,管城網站營銷推廣歡迎管城等地區企業咨詢
最初的想法是寫一個可以用電腦前置攝像頭拍照的程序,在舍友使用你電腦的時候,不經意間獲取到一大堆奇葩舍友的表情包。
然后我又突發奇想,要不搞個開機啟動吧,這樣我就可以看到是誰開啟了我的電腦啦。
然后,突(nao)發(dong)奇(da)想(kai)的我又想到萬一我電腦不在身邊怎么辦?要不再加個郵件發送機制吧,開機拍到照片再郵件發送給我?哈哈
deepin 15.9
好看好用的國產linux系統
python 2.7或者3.6
解釋器,哪個版本都可以,我選擇3.6
smtplib
用來發送郵件
用來構造郵件內容的庫
opencv
用來調取攝像頭拍攝照片
time
獲取開機以及拍照的時間
os
判斷網絡連接
獲取腳本路徑
sys
判斷網絡是否聯通
1.用opencv庫調用攝像頭拍照保存為文件。
2.檢查網絡是否連接,未連接則圖片保存到本地。
3.用email庫構造郵件內容,把保存的照片以附件的形式插入到郵件內容中。
4.用smtplib庫發送郵件給指定郵件接收者。
5.實現腳本開機自啟動。
首先當然是安裝opencv啦。
其他的email、smtplib、sys、os、time為python默認安裝的包,我們只需要導入即可。
如果是python3.6安裝opencv就在終端輸入:
pip3install?opencv-python
如果是python2.7安裝opencv,就在終端輸入:
pipinstall?opencv-python
安裝完成后,我們導入必要的包。
各個包的作用在前文已經講過,不再多言。
email 我們只需要部分功能,所以選擇性導入
將smtp服務器,登錄郵箱賬號及密碼,收件人,腳本路徑等設置為全局變量。方便以后程序移植與修改。
注:很多郵箱為了安全起見,不會使用真實的登錄密碼,而是要使用授權碼,在QQ郵箱的設置里面可以找到生成授權碼選項。
判斷網絡聯通狀態的方法很多,我采用很簡單很直接的ping。
如果網絡連接正常,則拍照發郵件。
如果網絡未連接,等待十秒鐘再次測試,如果等待次數超過設置的最大次數,程序退出。
首先要寫一個開機自啟腳本,文件名為:autoStart.sh
腳本內容為
然后 在/etc/rc.local最后添加一行
./home/projects/sendemail/autoStart.sh
大功告成。
代碼都寫好了,重啟系統就可以收到郵件啦。
標題名稱:用Python控制攝像頭拍照并發郵件
本文網址:http://vcdvsql.cn/article36/pcocpg.html
成都網站建設公司_創新互聯,為您提供標簽優化、外貿網站建設、服務器托管、Google、網站導航、自適應網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯