今回は、nodeを使用して個人アカウントロボットを作成する方法と、nodeを使用して個人アカウントロボットを作成する際の注意点を説明します。以下は実際のケースです。
現在、日常生活は WeChat と切り離せないものになっています。この記事では、WeChat の個人アカウントを操作して、自動友達リクエスト、キーワード返信、自動グループ募集などの機能を実現する方法を紹介します。 。コミュニティ運営の効率が大幅に向上しました。
wechaty (https://chatie.io/wechaty/) はオープンソースの WeChat 個人アカウント SDK であり、一連のパッケージがあり、開発者はその上に WeChat ロボットを構築できます。それの開発。これを使用してさまざまなことができます:
1) 友達の管理と維持; 2) チャット メッセージを迅速かつ秩序正しく処理する 3) WeChat グループ管理 4) 自動返信を実装する 5)...
1. すぐに始める
wechaty プロジェクトのホームページには、WeChat ロボットを作成するための 6 行のコードが記載されているので、試してみましょう。 注: Node.js バージョン >= 8.5
世界一短い ChatBot コード: 6 行の JavaScript
const { Wechaty } = require('wechaty') Wechaty.instance() // Singleton .on('scan', (url, code) => console.log(`Scan QR Code to login: $[code]\n${url}`)) .on('login', user => console.log(`User ${user} logined`)) .on('message', message => console.log(`Message: ${message}`)) .start()
これらの 6 行のコードは、WeChat 個人アカウントへのログインと受信メッセージの印刷を実装します。
wechaty は Docker と NPM を通じて実行できます。この記事では、npm メソッド
node bot.js を使用して、この個人アカウント ロボットを起動します。このとき、コマンド ラインはブラウザーでリンクを出力します。これは QR コードです。コードをスキャンしてログインできます (注: 2017 年末に、WeChat は WeChat ウェブ版ログインのサポートを段階的に終了したため、後から登録された WeChat アカウントはウェブ WeChat ログインをサポートしません。アカウントを購入するのに 105 RMB を費やしました。ぜひ使ってみてください。3 秒間財布が痛くなります)
User Contact logined // 扫码登录 Message: Message<javascript> // 接收微信消息</javascript>
ロボット体験は記事の最後にあります。 サンプルコードのアドレス: Github
2. 友達リクエストを自動的に渡す
前のサンプルコードを通して、このライブラリがいかにシンプルで強力であるかを知ることができます。次に、最初の小さな関数を実装しましょう: 友達を自動的にリクエストします
//··· .on('friend', async (contact, request) => { if (request) { if (/JavaScript|JS/i.test(request.hello)) { logMsg = 'accepted because verify messsage is "JS之禅"' request.accept() } else { logMsg = 'not auto accepted, because verify message is: ' + request.hello } } else { logMsg = 'friend ship confirmed with ' + contact.get('name') } }) //···
ここでは友達イベントをリッスンします。誰がどのような友達リクエストを送信したかを取得できます。ここではフレンド追加時のリクエストを検証しましたが、フレンドリクエストの内容が[JS]または[JavaScript]の場合、フレンドリクエストは自動的に通過します。
QR コードを開くためにブラウザにリンクをコピーし、毎回スキャンするのはまったくクールではなく、サーバー上で使用するのにも不便です。現時点では、qrcode-terminal パッケージを使用して、コマンド ラインで QR コードを直接出力できます。
//··· const QrcodeTerminal = require('qrcode-terminal') //··· .on('scan', (url, code) => { let loginUrl = url.replace('qrcode', 'l') QrcodeTerminal.generate(loginUrl) console.log(url) }) //···
node bot.js コマンドラインを実行すると、QR コードが直接印刷されるため、非常に便利です。
3. 自動返信
次に、2 番目の小さな機能であるキーワード自動返信を実装しましょう。
//··· .on('message', async (message) => { const contact = message.from() const content = message.content() const room = message.room() if (room) { console.log(`Room: ${room.topic()} Contact: ${contact.name()} Content: ${content}`) } else { console.log(`Contact: ${contact.name()} Content: ${content}`) } // 不处理自己发的消息 if (message.self()) { return } if (/JavaScript|Js|js/.test(content)) { message.say('关注公众号 JavaScript之禅') } }) //···
上記では、メッセージ処理のためにメッセージをリッスンしています。メッセージはすべてのメッセージを受信でき、グループ チャット メッセージであるかどうかを判断し、メッセージに基づいて対応するコンテンツを返信できます。 [js]を送信すると、設定したメッセージが届き、自動返信が実現します。
4. グループを自動的に取得する
前述したように、メッセージ処理とグループ管理を組み合わせることで、キーワードに基づいてグループを自動的に取得することができます
//··· .on('message', async (message) => { const contact = message.from() const content = message.content() const room = message.room() if (room) { console.log(`Room: ${room.topic()} Contact: ${contact.name()} Content: ${content}`) } else { console.log(`Contact: ${contact.name()} Content: ${content}`) } if (message.self()) { return } if (/JavaScript|Js|js/.test(content)) { message.say('关注公众号 JavaScript之禅没?') } // 自动拉群 if (/加群/.test(content)) { let keyroom = await Room.find({ topic: 'test' }) if (keyroom) { await keyroom.add(contact) await keyroom.say('欢迎新朋友!', contact) } } }) //···
上記のコードは、グループを操作するために Room を渡します。チャット。 このとき、「グループを追加」と返信すると、自動的にグループに追加されます。もちろん、Room.del を使用して特定のグループ メンバーを追い出すなど、さらに多くのことを行うこともできます。
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨読書:
フロントエンドインターフェイスで DOM 要素の絶対位置を取得する方法
以上がノードを使用して個人アカウントロボットを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 中国語版
中国語版、とても使いやすい

Dreamweaver Mac版
ビジュアル Web 開発ツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター
