用python寫微信每日一句,Python操作微信

本文目錄一覽:

如何給微信好友,每天的8點自動發消息

#CSDN上已經有不少方法,這邊給你推薦一位大佬用Python寫的:(代碼是每天晚上發晚安的,複製粘貼後修改即可)

from __future__ import unicode_literals

from threading import Timer

from wxpy import *

import requests

import random

bot = Bot()

# linux執行登陸請調用下面的這句

#bot = Bot(console_qr=2,cache_path=”botoo.pkl”)

def get_news():

“””獲取金山詞霸每日一句,英文和翻譯”””

url = “”

r = requests.get(url)

content = r.json()[‘content’]

note = r.json()[‘note’]

return content, note

def send_news():

try:

contents = get_news()

# 你朋友的微信名稱,不是備註,也不是微信帳號。

my_friend = bot.friends().search(‘fairy’)[0]

my_friend.send(contents[0])

my_friend.send(contents[1])

my_friend.send(u”晚安”)

# 每86400秒(1天),發送1次

t = Timer(86400, send_news)

# 為了防止時間太固定,於是決定對其加上隨機數

ran_int = random.randint(0,100)

t = Timer(86400+ran_int,send_news)

t.start()

except:

# 你的微信名稱,不是微信帳號。

my_friend = bot.friends().search(‘威風大俠’)[0]

my_friend.send(u”今天消息發送失敗了”)

if __name__ == “__main__”:

send_news()

——————— 

原作者:精神抖擻王大鵬 

來源:CSDN 

原文: 

版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

Python給指定微信好友自動發送信息和圖片

import os

import win32gui #pywin32-221.win-amd64-py3.7.exe

import win32con

from ctypes import *

import win32clipboard as w

import time

from PIL import Image #pip install pillow

import win32api

def setText(info):

w.OpenClipboard()

w.EmptyClipboard()

w.SetClipboardData(win32con.CF_UNICODETEXT, info)

w.CloseClipboard()

def setImage(imgpath):

im = Image.open(imgpath)

im.save(‘1.bmp’)

aString = windll.user32.LoadImageW(0, r”1.bmp”, win32con.IMAGE_BITMAP, 0, 0, win32con.LR_LOADFROMFILE)

def m_click(x,y):

win32api.SetCursorPos((x,y))

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)

def pasteInfo():

win32api.keybd_event(17,0,0,0) #ctrl鍵位碼是17

win32api.keybd_event(86,0,0,0) #v鍵位碼是86

win32api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0) #釋放按鍵

win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)

def searchByUser(uname):

hwnd = win32gui.FindWindow(‘WeChatMainWndForPC’, ‘微信’)

setText(uname)

m_click(100,40)

time.sleep(0.5)

m_click(100,40)

pasteInfo()

time.sleep(1)

m_click(100,120)#搜索到之後點擊

#win32api.keybd_event(13,0,0,0)#回車

#win32api.keybd_event(13,0,KEYEVENTF_KEYUP,0)

#win32gui.SendMessage(hwnd, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)

#win32gui.SendMessage(hwnd, win32con.WM_KEYUP, win32con.VK_RETURN, 0)

def sendInfo():

time.sleep(1)

pasteInfo()

time.sleep(1)

win32api.keybd_event(18, 0, 0, 0) #Alt

win32api.keybd_event(83,0,0,0) #s

win32api.keybd_event(83,0,win32con.KEYEVENTF_KEYUP,0) #釋放按鍵

win32api.keybd_event(18,0,win32con.KEYEVENTF_KEYUP,0)

def closeByUser(uname):

hwnd = win32gui.FindWindow(‘WeChatMainWndForPC’, ‘微信’)

win32api.keybd_event(18,0,0,0) #Alt

win32api.keybd_event(115,0,0,0) #F4

win32api.keybd_event(115,0,KEYEVENTF_KEYUP,0)

win32api.keybd_event(18,0,KEYEVENTF_KEYUP,0)

”’

searchByUser(‘Tony老師’)

setText(‘Tony老師理髮師’)

sendInfo()

time.sleep(1)

searchByUser(‘文件傳輸助手’)

setText(‘地表最強CPU’)

sendInfo()

”’

def getNosuffixImgName(imgname):

return os.path.splitext(imgname)[0]

imgdir=’imgs/’

imgs=os.listdir(imgdir)

for img in imgs:

searchByUser(getNosuffixImgName(img))

setImage(imgdir+img)

sendInfo()

time.sleep(1)

python編寫微信小程序命令行操作腳本

本次目的是利用python編寫一個腳本,可以通過命令行向指定appid上傳微信小程序

如何用Python進行微信二次開發

創建步驟:

1.申請免費且支持python的伺服器,新浪雲sae,新建SAE應用之後,有兩種代碼提交方式,建議使用SVN(因為git支持代碼提交,但不支持環境配置);

2.將對應版本的信息複製到微信開發-基本配置-URL,提交顯示錯誤,因為還沒有寫代碼,可以先用web框webpy架寫個網頁;

查看webpy使用說明:

查看ase進行python開發入門說明:

3.配置信息,告訴新浪雲需要什麼運行環境。點擊代碼管理-編輯代碼,將用到的第三方庫信息寫入config.yaml,注意破折號,冒號後面空格!!

libraries:

– name: webpy

  version: “0.36”

– name: lxml

  version: “2.3.4”

在index.wsgi文件中寫入python啟動程序

新建文件,寫入接受微信get請求驗證的Python文件

4.在index.wgsi中寫入以下信息:

#coding=utf-8

import os

import sae

import web

from weixinInterface import WeixinInterface

#配置web的路由

urls = (

    ‘/weixin’,’WeixinInterface’

)

#拼接路徑

app_root=os.path.dirname(__file__)

templates_root = os.path.join(app_root,’templates’)

#渲染模版

render = web.template.render(templates_root)

#啟動app

app = web.application(urls,globals()).wsgifunc()

application = sae.create_wsgi_app(app)

5.在自己編寫的Python文件中寫入微信驗證和接受信息的程序

#coding=utf-8

import hashlib

import web

import time

import os

from lxml import etree

#hashlib用於加密,md5,hash等

#lxml用來解析xml文件

class WeixinInterface(object):

    #初始化

    def __init__(self):

        #拼接路徑

        self.app_root = os.path.dirname(__file__)

        self.templates_root = os.path.join(self.app_root,’templates’)

        #渲染模版

        self.render = web.template.render(self.templates_root)

    #使用get方法,接收微信的get請求,看開發者文檔的說明

    #

    def GET(self):

        data = web.input()

        signature = data.signature#微信加密簽名

        timestamp = data.timestamp#時間戳

        nonce = data.nonce#隨機數

        echostr = data.echostr#隨即字元串

        token = ‘zq90857’#自己設置的token

        #將token、timestamp、nonce三個參數進行字典序排序

        list = [token,timestamp,nonce]

        list.sort()

        #將三個參數字元串拼接成一個字元串進行sha1加密

        sha1=hashlib.sha1()

        map(sha1.update,list)

        temStr = sha1.hexdigest()#加密

        #判斷

        if temStr == signature:

            return echostr

6.假設接收文字信息,按照開發者文檔的要求,配置template文件夾下reply_text.xml文件

$def with(toUser,fromUser,createtime,content)

xml

 ToUserName![CDATA[$toUser]]/ToUserName

 FromUserName![CDATA[$fromUser]]/FromUserName 

 CreateTime$createtime/CreateTime

 MsgType![CDATA[text]]/MsgType

 Content![CDATA[$content]]/Content

 /xml

我用了100行Python代碼,實現了與女神尬聊微信(附代碼)

朋友圈很多人都想學python,有一個很重要的原因是它非常適合入門。對於 人工智慧演算法 的開發,python有其他編程語言所沒有的獨特優勢, 代碼量少 ,開發者只需把精力集中在演算法研究上面。

本文介紹一個用python開發的,自動與美女尬聊的小軟體。以下都是滿滿的乾貨,是我工作之餘時寫的,經過不斷優化,現在分享給大家。那現在就讓我們抓緊時間開始吧!

準備:

編程工具IDE:pycharm

python版本: 3.6.0

首先新建一個py文件,命名為:ai_chat.py

PS: 以下五步的代碼直接複製到單個py文件裡面就可以直接運行。為了讓讀者方便寫代碼,我把代碼都貼出來了,但是排版存在問題,我又把在pycharm的代碼排版給截圖出來。

第一步: 引入關鍵包

簡單介紹一下上面幾個包的作用: pickle 包 是用來對數據序列化存文件、反序列化讀取文件,是人類不可讀的,但是計算機去讀取時速度超快。(就是用記事本打開是亂碼)。 而 json包 是一種文本序列化,是人類可讀的,方便你對其進行修改(記事本打開,可以看到裡面所有內容,而且都認識。) gensim 包 是自然語言處理的其中一個python包,簡單容易使用,是入門NLP演算法必用的一個python包。 jieba包 是用來分詞,對於演算法大咖來說效果一般般,但是它的速度非常快,適合入門使用。

以上這些包,不是關鍵,學習的時候,可以先跳過。等理解整個程序流程後,可以一個一個包有針對性地去看文檔。

第二步:靜態配置

這裡path指的是對話語料(訓練數據)存放的位置,model_path是模型存儲的路徑。

這裡是個人編程的習慣,我習慣把一些配置,例如:文件路徑、模型存放路徑、模型參數統一放在一個類中。當然,實際項目開發的時候,是用config 文件存放,不會直接寫在代碼里,這裡為了演示方便,就寫在一起,也方便運行。

第三步: 編寫一個類,實現導數據、模型訓練、對話預測一體化

首次運行的時候,會從靜態配置中讀取訓練數據的路徑,讀取數據,進行訓練,並把訓練好的模型存儲到指定的模型路徑。後續運行,是直接導入模型,就不用再次訓練了。

對於model類,我們一個一個來介紹。

initialize() 函數和 __init__() 函數 是對象初始化和實例化,其中包括基本參數的賦值、模型的導入、模型的訓練、模型的保存、最後返回用戶一個對象。

__train_model() 函數,對問題進行分詞,使用 gesim 實現詞袋模型,統計每個特徵的 tf-idf , 建立稀疏矩陣,進而建立索引。

__save_model() 函數 和 __load_model() 函數 是成對出現的,很多項目都會有這兩個函數,用於保存模型和導入模型。不同的是,本項目用的是文件存儲的方式,實際上線用的是資料庫

get_answer() 函數使用訓練好的模型,對問題進行分析,最終把預測的回答內容反饋給用戶。

第四步:寫三個工具類型的函數,作為讀寫文件。

其中,獲取對話材料,可以自主修改對話內容,作為機器的訓練的數據。我這裡只是給了幾個簡單的對話語料,實際上線的項目,需要大量的語料來訓練,這樣對話內容才飽滿。

這三個工具函數,相對比較簡單一些。其中 get_data() 函數,裡面的數據是我自己編的,大家可以根據自己的習慣,添加自己的對話數據,這樣最終訓練的模型,對話方式會更貼近自己的說話方式。

第五步: 調用模型,進行對話預測

主函數main(), 就是你整個程序運行的起點,它控制著所有步驟。

運行結果:

程序後台運行結果:

如果有疑問想獲取源碼( 其實代碼都在上面 ),可以後台私信我,回復:python智能對話。 我把源碼發你。最後,感謝大家的閱讀,祝大家工作生活愉快!

如何在微信中寫Python

使用python做後台服務,

提供數據介面 用微信小程序提供的前端api和文檔寫前端頁面

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/194414.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-02 14:38
下一篇 2024-12-02 14:38

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29

發表回復

登錄後才能評論