最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)APP自動(dòng)化發(fā)微信群消息的示例代碼

 更新時(shí)間:2022年01月13日 09:19:03   作者:用戶7002726845988  
本文主要介紹了Python實(shí)現(xiàn)APP自動(dòng)化發(fā)微信群消息的示例代,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下碼

1. 前言

但是對(duì)于很多人來說,首先編寫一款 App 需要一定的移動(dòng)端開發(fā)經(jīng)驗(yàn),其次還需要另外編寫無障礙服務(wù)應(yīng)用,如此顯得有一定難度的
本篇文章將介紹另外一種方案,即:利用前面文章介紹的 AutoJS 來實(shí)現(xiàn)自動(dòng)給微信群發(fā)送新聞早報(bào)

2. 爬蟲及服務(wù)

為了演示方便,這里以百度熱搜為新聞早報(bào)數(shù)據(jù)源,

使用 Requests + BeautifulSoup 按熱度,爬取熱度最高的 15 條數(shù)據(jù)

import requests
from bs4 import BeautifulSoup

def baidu_top_tipic():
? ? """百度熱搜"""
? ? requests_page = requests.get('http://top.baidu.com/buzz?b=1&c=513&fr=topbuzz_b42_c513')
? ? soup = BeautifulSoup(requests_page.text, "lxml")

? ? # 查詢
? ? soup_text = soup.find_all("div", class_='c-single-text-ellipsis', text=True)

? ? top_list = []
? ? for index, text in enumerate(soup_text):
? ? ? ? top_list.append((str(index + 1) + "、" + text.string.strip()))

? ? # 取熱度最高的15條數(shù)據(jù)
? ? return '\n'.join(top_list[:15])

然后,利用 FastAPI 編寫獲取新聞早報(bào)的 API,部署到云服務(wù)器上(這里以 CentOS 為例)

import uvicorn
from fastapi import FastAPI
from every_news import *

# pip3 install uvicorn
# pip3 install fastapi

# 實(shí)例化
app = FastAPI()

# 每日新聞
@app.get("/news")
async def rsc_api():
? ? msg = get_news()
? ? return {
? ? ? ? "code": 200,
? ? ? ? "msg": msg
? ? }

if __name__ == '__main__':
? ? uvicorn.run(app='news_api:app', host="0.0.0.0",
? ? ? ? ? ? ? ? port=6789, reload=True, debug=True)

最后,運(yùn)行下面命令使服務(wù)在后臺(tái)運(yùn)行

# 命令行后臺(tái)運(yùn)行
# 日志目錄:/news_api.log
nohup python3 /xag/news_api.py > ?/news_api.log 2>&1 &

3. 自動(dòng)化發(fā)送群聊

在 VS Code 中編寫 AutoJS 腳本

首先,定義一個(gè)給群聊發(fā)送消息的方法
PS:使用 click() 坐標(biāo)執(zhí)行點(diǎn)擊操作僅適用于 Android 7.0+

//API調(diào)用獲取新聞數(shù)據(jù)
var url = "http://host:6789/news";

//發(fā)送群聊名稱
var group_name = "群聊名稱";

//發(fā)送信息給微信群
function send_wx_msg(group_name, send_msg) {
? ? //如果休眠,喚醒設(shè)備
? ? //注意:為了保證耗電低,設(shè)置睡眠(10s無操作)
? ? device.wakeUpIfNeeded()

? ? //打開微信
? ? app.launch("com.tencent.mm");
? ? text("微信").waitFor()

? ? //點(diǎn)擊進(jìn)入到聊天界面
? ? var chat_element_bounds = text(group_name).findOne().bounds();
? ? //支持Android7.0+
? ? click(chat_element_bounds.centerX(), chat_element_bounds.centerY());
? ? sleep(3000)
? ? id("auj").className("EditText").findOne().setText(send_msg)
? ? sleep(3000)
? ? //發(fā)送消息
? ? text("發(fā)送").click()
? ? log("發(fā)送成功!")
? ? //返回到手機(jī)桌面
? ? back();
? ? home();

然后,在主線程中啟動(dòng)一個(gè)新的線程,調(diào)用 API 接口,獲取數(shù)據(jù)后將數(shù)據(jù)發(fā)送出去

//線程
threads.start(function () {
? ? //獲取新聞
? ? http.get(url, {}, function (res, err) {
? ? ? ? //錯(cuò)誤
? ? ? ? if (err) {
? ? ? ? ? ? log("抱歉!今天獲取新聞失敗。。。")
? ? ? ? ? ? return;
? ? ? ? }
? ? ? ? log("今日新聞獲取成功!")
? ? ? ? let html = res.body.string();
? ? ? ? let msg = JSON.parse(html).msg;
? ? ? ? send_wx_msg(group_name, msg)
? ? });
})

接著,使用 VS Code 將源碼導(dǎo)入到手機(jī)設(shè)備上
最后,選中源文件 - 右鍵 - 更多 - 定時(shí)任務(wù),設(shè)置定時(shí)任務(wù)即可

?4. 最后

如此,即可以實(shí)現(xiàn)每天早上給指定群發(fā)送新聞早報(bào)的功能
當(dāng)然,如果涉及多個(gè)群聊的發(fā)送,只需要使用 AutoJS 查詢多個(gè)目標(biāo)群聊對(duì)象 + 頁面滑動(dòng),遍歷進(jìn)行發(fā)送信息即可
另外,由于無障礙服務(wù)的不穩(wěn)定性,可以在設(shè)置中 AutoJS 應(yīng)用服務(wù)的優(yōu)先級(jí),保證程序的穩(wěn)定運(yùn)行

到此這篇關(guān)于Python實(shí)現(xiàn)APP自動(dòng)化發(fā)微信群消息的示例代碼的文章就介紹到這了,更多相關(guān)Python APP自動(dòng)發(fā)微信群內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 對(duì)Django中的權(quán)限和分組管理實(shí)例講解

    對(duì)Django中的權(quán)限和分組管理實(shí)例講解

    今天小編就為大家分享一篇對(duì)Django中的權(quán)限和分組管理實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python實(shí)現(xiàn)數(shù)據(jù)寫入excel表格

    python實(shí)現(xiàn)數(shù)據(jù)寫入excel表格

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)數(shù)據(jù)寫入excel表格,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • pygame加載中文名mp3文件出現(xiàn)error

    pygame加載中文名mp3文件出現(xiàn)error

    本文主要介紹了pygame加載中文名mp3文件出現(xiàn)error的解決方案。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-03-03
  • Python Faker庫基本用法詳解

    Python Faker庫基本用法詳解

    Faker 是一個(gè)非常強(qiáng)大的庫,適用于生成各種類型的偽隨機(jī)數(shù)據(jù),可以幫助開發(fā)者在測(cè)試、數(shù)據(jù)生成、或其他需要隨機(jī)數(shù)據(jù)的場(chǎng)景中提高效率,本文給大家介紹Python Faker庫基本用法詳解,感興趣的朋友一起看看吧
    2025-04-04
  • Python導(dǎo)入或執(zhí)行python源文件的3種方法

    Python導(dǎo)入或執(zhí)行python源文件的3種方法

    這篇文章主要給大家介紹了關(guān)于Python導(dǎo)入或執(zhí)行python源文件的3種方法,python源代碼的文件以"py"為擴(kuò)展名,由python.exe解釋,可以在控制臺(tái)下運(yùn)行,需要的朋友可以參考下
    2023-08-08
  • Python中高級(jí)語法糖的使用示例詳解

    Python中高級(jí)語法糖的使用示例詳解

    Python?是一門簡(jiǎn)潔而強(qiáng)大的編程語言,具備許多高級(jí)語法糖(syntactic?sugar)功能,本文將介紹一些常見的Python高級(jí)語法糖,以及如何使用它們來提高代碼質(zhì)量和開發(fā)效率,需要的小伙伴可以參考下
    2024-01-01
  • Python函數(shù)式編程

    Python函數(shù)式編程

    函數(shù)式編程Functional Programming,雖然也可以歸結(jié)到面向過程的程序設(shè)計(jì),但其思想更接近數(shù)學(xué)計(jì)算。函數(shù)式編程就是一種抽象程度很高的編程范式,純粹的函數(shù)式編程語言編寫的函數(shù)沒有變量。
    2017-07-07
  • Python3 適合初學(xué)者學(xué)習(xí)的銀行賬戶登錄系統(tǒng)實(shí)例

    Python3 適合初學(xué)者學(xué)習(xí)的銀行賬戶登錄系統(tǒng)實(shí)例

    下面小編就為大家?guī)硪黄狿ython3 適合初學(xué)者學(xué)習(xí)的銀行賬戶登錄系統(tǒng)實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-08-08
  • python中open用法的使用指南

    python中open用法的使用指南

    在Python中,open()函數(shù)用于打開文件,并返回一個(gè)文件對(duì)象,可以使用該對(duì)象來讀取或?qū)懭胛募?shù)據(jù),本文主要介紹了python中open用法的使用指南,感興趣的可以了解一下
    2023-12-12
  • 命令行傳遞參數(shù)argparse.ArgumentParser的使用解析

    命令行傳遞參數(shù)argparse.ArgumentParser的使用解析

    這篇文章主要介紹了命令行傳遞參數(shù)argparse.ArgumentParser的使用解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02

最新評(píng)論

宁晋县| 屏边| 阿拉善左旗| 武平县| 惠来县| 武穴市| 东乌| 普陀区| 宜章县| 彭水| 原平市| 定陶县| 东方市| 清镇市| 大洼县| 铅山县| 兴国县| 郸城县| 遵义县| 栾川县| 辽源市| 大连市| 江安县| 巴南区| 株洲市| 安吉县| 鄂托克旗| 根河市| 凤凰县| 辉南县| 林周县| 高唐县| 新巴尔虎右旗| 阳高县| 和政县| 佛冈县| 水城县| 石嘴山市| 县级市| 通道| 黑河市|