【Python爬虫】Windows环境下wxpy不需每次登陆重新扫描
有時候我們想每天向你女朋友或者某人發送一條信息(通過線程控制或者每天自動任務);此外我們可以通過更改wxpy中Bot()中參數,保存緩存不用每次都掃描二維碼。
以下代碼來源于:http://www.cnblogs.com/botoo/p/8622379.html
from __future__ import unicode_literals from threading import Timer from wxpy import * import requestsbot = Bot() #bot.join() #不注釋此代碼時,不執行bot后面代碼def get_news():"""獲取金山詞霸每日一句,英文和翻譯"""url = "http://open.iciba.com/dsapi/"r = requests.get(url)content = r.json()['content'] #英文note = r.json()['note'] #中文misue = r.json()['tts'] #語音return content, note ,misuedef send_news():try:contents = get_news()# 你朋友的微信名稱,不是備注,也不是微信帳號。my_friend = bot.friends().search(u'朋友微信名詞')[0]my_friend.send(contents[0])my_friend.send(contents[1])my_friend.send(contents[2])my_friend.send(u"Have a good day, love you baby!")# 每86400秒(1天),發送1次,通過線程方式控制發送時間,不用登錄t = Timer(86400, send_news)t.start()except:# 你的微信名稱,不是備注,也不是微信帳號。my_friend = bot.friends().search('自己微信名詞')[0]my_friend.send(u"Failure to send message!")if __name__ == "__main__":send_news()關于Bot()對象的相關參數說明,我們可以在源碼中的注釋中看到:?? ?
param cache_path:
? ? ? ? ? ? * 設置當前會話的緩存路徑,并開啟緩存功能;為 `None` (默認) 則不開啟緩存功能。
? ? ? ? ? ? * 開啟緩存后可在短時間內避免重復掃碼,緩存失效時會重新要求登陸。
? ? ? ? ? ? * 設為 `True` 時,使用默認的緩存路徑 'wxpy.pkl'。? ? ? ? ? ??
param qr_path: 保存二維碼的路徑
所以我們只需要以下幾個步驟就可以讓每次執行程序時不需要重復掃描二維碼去登錄了:
1.更改cache_path參數和qr_path參數,cache_path變成True,qr_path變成二維碼路徑
2. 更改cache_path路徑,將True變成路徑'wxpy.pkl'
此外上面的代碼是通過線程控制的,我們還有兩種方法每天運行代碼一次:
先注釋掉線程控制 #t = Timer(86400, send_news) #t.start()1. 通過定時任務執行程序
2.通過開機啟動批處理
后面我們可以分別介紹如何通過另外兩種方法執行程序。
總結
以上是生活随笔為你收集整理的【Python爬虫】Windows环境下wxpy不需每次登陆重新扫描的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2018年下半年《软件评测师》下午试卷及
- 下一篇: python多线程之线程锁(Lock)和