最近一直在自學(xué)Python,并且深深被它的優(yōu)雅、簡(jiǎn)單和高效所吸引,學(xué)習(xí)的主攻方向是Python的web開發(fā)和網(wǎng)絡(luò)爬蟲,但是為了讓自學(xué)的過程不那么枯燥無味,同時(shí)也能滿足自己喜歡折騰的愛好,就入手了一塊Raspberry Pi 3B和一個(gè)攝像頭。今天在這和大家分享一個(gè)我剛剛編寫的Python腳本,目的是用Python+樹莓派實(shí)現(xiàn)的微信拍攝機(jī)器人,并將圖片和視頻文件傳入到手機(jī)微信中。
1. 準(zhǔn)備材料:(1)樹莓派
(2)攝像頭:
(3)兩部可以登錄微信的智能手機(jī)(分別用于登錄兩個(gè)互為好友的微信號(hào))2. 樹莓派的安裝和鏈接:具體的樹莓派系統(tǒng)安裝以及遠(yuǎn)程登錄的方法可以在簡(jiǎn)書和百度上搜索,方法都非常詳細(xì)而且操作也比較簡(jiǎn)單,就不在這里贅述了(推薦大家兩款遠(yuǎn)程登錄樹莓派的手機(jī)軟件JuiceSSH和VNC Real簡(jiǎn)單好用)
3. Python源碼:
from wxpy import *
import picamera
#初始化微信機(jī)器人,掃碼登錄
bot = Bot()
my_friend = bot.friends().search('高桿')[0]
#初始化圖靈機(jī)器人
tuling = Tuling(api_key='8edce3ce905a4c1dbb965e6b35c3834d')
# 自動(dòng)回復(fù)所有文字消息
@bot.register(msg_types=TEXT)
def auto_reply_all(msg):
#當(dāng)接受到文字為kk時(shí),拍攝照片
if msg.text == 'kk':
#初始化照相機(jī)
camera = picamera.PiCamera()
try:
#捕獲圖像
camera.vflip = True
camera.capture('image.jpg')
except:
#若調(diào)用攝像頭拍攝失敗,發(fā)送錯(cuò)誤信息
my_friend.send('PiCamera Error')
else:
#發(fā)送給請(qǐng)求者
my_friend.send_image('image.jpg')
finally:
#關(guān)閉攝像頭,釋放資源
camera.close()
#當(dāng)接受到文字為tt時(shí),錄制視頻
elif msg.text == 'tt':
with picamera.PiCamera() as camera:
camera.resolution = (640, 480)
camera.start_preview()
#錄制視頻,視頻格式為h264
camera.start_recording('video.h264', format='h264', quantization=23, resize=(1024, 768))
camera.wait_recording(60)
camera.stop_recording()
camera.stop_preview()
my_friend.send_video('video.h264')
camera.close()
else:
tuling.do_reply(msg)
# 開始運(yùn)行
bot.join()
3. 代碼分析:在這個(gè)程序中引用了Python的兩個(gè)類庫(kù),具體可以使用apt-get install python3-wxpy方式下載,一個(gè)是wxpy(這個(gè)庫(kù)要去必須使用Python3.X版本),這是基于itchat庫(kù)開發(fā)的網(wǎng)頁版微信機(jī)器人類庫(kù),具體的使用方法可以打開下面的鏈接學(xué)習(xí)(對(duì)itchat熟悉的朋友也可以直接引用itchat類),在這里還用到了一個(gè)圖靈機(jī)器人,他已經(jīng)封裝到了wxpy庫(kù)中,這樣可以讓微信機(jī)器人除了拍照和攝像,還能進(jìn)行簡(jiǎn)單的問答聊天。
wxpy庫(kù)使用說明:wxpy.readthedocs.io/zh/latest/
還用一個(gè)庫(kù)就是picamera,具體可以使用apt-get install python3-picamera方式下載,這個(gè)Python模塊是專門調(diào)用樹莓派攝像頭的,具體的使用方法可以訪問下面的鏈接學(xué)習(xí)
picamera庫(kù)使用說明:picamera.readthedocs.io/en/release-1.2/install3.html#raspbian-installation
在程序中生成的圖片文件名為image.jpg,視頻名稱為video.h264,這兩個(gè)文件會(huì)在每次生成時(shí)反復(fù)覆蓋,不會(huì)占用樹莓派的過多存儲(chǔ)空間,這也也造成了文件不能再樹莓派上一直保存。
-
機(jī)器人
+關(guān)注
關(guān)注
213文章
31381瀏覽量
223526 -
python
+關(guān)注
關(guān)注
58文章
4882瀏覽量
90285 -
樹莓派
+關(guān)注
關(guān)注
122文章
2081瀏覽量
110745
原文標(biāo)題:基于Python和樹莓派的微信拍攝機(jī)器人
文章出處:【微信號(hào):gh_dae0718828df,微信公眾號(hào):gh_dae0718828df】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
【開源項(xiàng)目】Emo:基于樹莓派 4B DIY 能笑會(huì)動(dòng)的桌面機(jī)器人
變形樂高玩具變形和樹莓派一起玩出樂高機(jī)器人!
樹莓派打造視頻監(jiān)控機(jī)器人Verybot
有關(guān)樹莓派制作機(jī)器人平臺(tái)的探索
請(qǐng)教利用樹莓派制作六足機(jī)器人的問題
樹莓派語音識(shí)別機(jī)器人(下)
家庭智能小管家機(jī)器人資料分享!
樹莓派Python與自美人工智能系統(tǒng)實(shí)現(xiàn)人臉識(shí)別
微信控制的家庭智能機(jī)器人(附語音聊天、人臉檢測(cè)、自主巡航等)
如何使用樹莓派開發(fā)智能機(jī)器人控制系統(tǒng)
【IoT畢業(yè)設(shè)計(jì)】樹莓派開發(fā)板+機(jī)智云IoT+監(jiān)測(cè)機(jī)器人
基于樹莓派的移動(dòng)機(jī)器人實(shí)現(xiàn)
能夠精準(zhǔn)定位的樹莓派機(jī)器人!
Python+樹莓派實(shí)現(xiàn)的微信拍攝機(jī)器人
評(píng)論