(點選上方快速關註並設定為星標,一起學Python)
作者:雲外孤島 連結:
https://www.cnblogs.com/cloudbird/p/10534658.html
好不容易有了女朋友,可相處起來總是磕磕碰碰。
有時候,你很想關心她,但是你太忙了,以至於她一直抱怨,覺得你不夠關心她。你暗自下決心,下次一定要準時發訊息給她,哪怕是幾句話,可是你又忘記了。你覺得自己很委屈?,但是她又覺得你不負責。
現在,再不用擔心了,用python就可以給女友定時發提示訊息了,而且不會漏過每一個關鍵時刻,每天早上起床、中午吃飯、晚上吃飯、晚上睡覺,都會準時發訊息給她了,而且還可以讓她學習英語單詞哦!
在生日來臨之時,自動發祝福語。在節日來臨之時,比如三八婦女節、女神節、情人節、春節、聖誕節,自動發問候語哦,再也不用擔心他說你沒有儀式感了?
最重要的是,可以實時知道女友的情感情緒指數,再也不用擔心女友莫名其妙生氣了。
為了方便快速開發,我們使用python中的wxpy模組完成微信的基本操作。
首先,我們設定一個config.ini配置檔案,並從這個配置檔案開始讀取資訊。這些引數一看就懂,所以無需多言。
↓上下滑動可檢視完整內容↓
如果你願意,可以在上面對時間的判斷中,加入一些其他你想要的,這樣你女友就更開心啦!後期如果有時間,我將會加上以上節日問候功能。?
接著,開啟微信機器人,為了程式的健壯性,自動判斷一下作業系統,根據不同作業系統執行不同指令:
# 啟動微信機器人,自動根據作業系統執行不同的指令 # windows系統或macOS Sierra系統使用bot = Bot() # linux系統或macOS Terminal系統使用bot = Bot(console_qr=2) if(‘Windows’ in platform.system()): # Windows bot = Bot() elif(‘Darwin’ in platform.system()): # MacOSX bot = Bot() elif(‘Linux’ in platform.system()): # Linux bot = Bot(console_qr=2,cache_path=True) else: # 自行確定 print(“無法識別你的作業系統型別,請自己設定”)
設定完相關引數以後,我們再來學習一下,如何每天教女友學英語:
# 獲取每日勵志精句 def get_message(): r = requests.get(“http://open.iciba.com/dsapi/”) note = r.json()[‘note’] content = r.json()[‘content’] return note,content
只有每天的問候和節日問候是僅僅不夠的,我們必須時刻知道她的情緒指數,這裡可以使用snowNlp或者jieba來做分析,但是為了能夠在打包成exe可執行檔案時使得程式盡可能小,我們採取直接呼叫介面的方式來做。程式碼如下:
# 接收女友訊息監聽器 # 女友微信名 my_girl_friend = bot.friends().search(my_lady_wechat_name)[0] # chats=my_girl_friend 表示接收訊息的物件,也就是女友 # except_self=False 表示同時也接收自己發的訊息,不需要接收自己訊息的可以去掉 @bot.register(chats=my_girl_friend, except_self=False) def print_others(msg): # 輸出聊天內容 print(msg.text)
# 做極其簡單的情感分析 # 結果僅供參考,請勿完全相信 postData = {‘data’:msg.text} response = post(‘https://bosonnlp.com/analysis/sentiment?analysisType=’,data=postData) data = response.text
# 情感評分指數(越接近1表示心情越好,越接近0表示心情越差) now_mod_rank = (data.split(‘,’)[0]).replace(‘[[‘,”) print(“來自女友的訊息:%s
# 傳送資訊到檔案傳輸助手 mood_message = u”來自女友的訊息:” + msg.text + ” bot.file_helper.send(mood_message)
當前情感得分:%s
越接近1表示心情越好,越接近0表示心情越差,情感結果僅供參考,請勿完全相信!” % (msg.text, now_mod_rank))
當前情感得分:” + now_mod_rank + ”
越接近1表示心情越好,越接近0表示心情越差,情感結果僅供參考,請勿完全相信!”
教完女友學英語後,開始把我們的關心語發給她。這裡涉及到wxpy模組的相關操作,很簡單,看我的例子就會了:
# 傳送訊息給她 def send_message(your_message): try: # 對方的微信名稱 my_friend = bot.friends().search(my_lady_wechat_name)[0]
# 傳送訊息給對方 my_friend.send(your_message) except:
# 出問題時,傳送資訊到檔案傳輸助手 bot.file_helper.send(u”守護女友出問題了,趕緊去看看咋回事~”)
最後,就是如何每天定時發關心語給女友的問題了。首先來個while迴圈,365天無限關心?
# 來個死迴圈,24小時關心她 while(True):
# 提示 print(“守護中,時間:%s”% time.ctime())
# 每天定時問候,早上起床,中午吃飯,晚上吃飯,晚上睡覺 # 獲取時間,只獲取時和分,對應的位置為倒數第13位到倒數第8位 now_time = time.ctime()[-13:-8] if (now_time == say_good_morning): # 隨機取一句問候語 message = choice(str_list_good_morning)
# 是否加上隨機表情 if(flag_wx_emoj): message = message + choice(str_list_emoj)
send_message(message) print(“提醒女友早上起床:%s” % time.ctime())
…………這下麵還有很多程式碼,我就不列出來了…………
# 延時60秒 time.sleep(60)
最後,輸入以下程式碼開始守護女友樣式吧~
# 開始守護女友 t = Thread(target=start_care, name=’start_care’) t.start()
pip安裝下列包:
-
[x] pip install wxpy
-
[x] pip install requests
設定以下內容:
[configuration]
# 設定女友的微信名稱,記住,不是微信ID也不是微信備註 my_lady_wechat_name = 小強子
# 設定女友生日資訊 # 若某一項月份或者日期不想設定,請輸入99,不能留空 # 幾月,註意補全數字,為兩位數,比如6月必須寫成06 birthday_month = 03 # 幾號,註意補全數字,為兩位數,比如6號必須寫成08 birthday_day = 18
# 設定早上起床時間,中午吃飯時間,下午吃飯時間,晚上睡覺時間 # 若某一項時間不想設定,請輸入99:00,不能留空 say_good_morning = 03:09 say_good_lunch = 03:10 say_good_dinner = 03:11 say_good_dream = 03:12
# 設定晚上睡覺問候語是否在原來的基礎上再加上每日學英語精句 # 1表示是,0表示否 flag_learn_english = 1
# 設定所有問候語結束是否加上表情符號 # 1表示是,0表示否 flag_wx_emoj = 1
# 設定節日祝福語 # 情人節祝福語 str_Valentine = 親愛的,情人節快樂!我想和你一起分享生命中的每一天,直到永遠。
# 三八婦女節祝福語 str_Women = 嘿,女神節到了,祝我的女神開心快樂!你每天都是那麼好看^_^
# 平安夜祝福語 str_Christmas_Eve = 寶貝,平安夜快樂,你吃蘋果了嗎?n(*≧▽≦*)n
# 聖誕節祝福語 str_Christmas = 小仙女,聖誕節快樂哦!(づ ̄3 ̄)づ╭❤~
# 她生日的時候的祝福語 str_birthday = 親愛的,生日快樂,我已經給你準備好了禮物哦,明天你就能看到啦!(*@ο@*) 哇~
https://github.com/shengqiangzhang/examples-of-web-crawlers
專案持續更新,歡迎您star本專案~
朋友會在“發現-看一看”看到你“在看”的內容