1. はじめにサインインアクティビティを開始して以来、ナゲットはこの機能を継続的に改善しています。 (๑`^´๑)鉱石はw(主に運に依存していません(•̀ω•́)✧)。サーバープラスノードタイミングスクリプト自動サインインと宝くじ機能を実現します。方向性が決まった後、記事を探し始めたので、直接 2. 準備サーバ 私はたくさんの記事を読みましたが、基本的にそれらはすべてリクエスト パッケージとスケジュールされたタスク トリガー パッケージを使用して実装しています。また、Treasure Monkey スクリプト、クラウド関数、ノード スクリプトを使用しているものもいくつか見てきましたが、これらは基本的にすべてをカバーしています。しかし、何を使用しても、アイデアと呼び出しインターフェースは同じであるため、この記事ではクラウド サーバーをベースとしており、クラウド サーバーまたはインターネットに接続され、24 時間シャットダウンされないコンピューターが必要です。 ノード環境 これについてはあまり言及しません。ノード環境のインストールはオンラインで利用可能ですが、誰もがインストールしているはずです。環境を整えた後、プロジェクトの構築を開始しました。 3. スクリプトプロジェクトの構築フォルダを作成し、プロジェクト名を記入します(ランダムな名前を付けてください( ̄▽ ̄)/) 次に、フォルダーの下の DOS ウィンドウ (cmd) を開くか、 ウィンドウに 次に、 npmとaxios npm とノードスケジュール インストールが完了すると、次の図が表示されます。 次に、コードとパラメータの書き込み用に、ルート ディレクトリに この時点で、 4. コードの作成と実行まず、使用されるパラメータをファイル( //config.js //今日のサインインが成功したかどうかを照会します。API: https://api.juejin.cn/growth_api/v1/get_today_status モジュール.エクスポート = { // ナゲット関連のパラメータ nuggets: { signInUrl: `https://api.juejin.cn/growth_api/v1/check_in`, //サインインインターフェース freeCheckUrl: `https://api.juejin.cn/growth_api/v1/lottery_config/get`, //無料宝くじ番号クエリ drawUrl: `https://api.juejin.cn/growth_api/v1/lottery/draw`, //宝くじインターフェースヘッダー: { リファラー: "https://juejin.cn/", 「アップグレード-安全でないリクエスト」: 1, 「ユーザーエージェント」: 「Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML、Gecko など) Chrome/55.0.2883.87 Safari/537.36」、 Cookie: `ここに独自の Cookie を入力し、Nuggets Web バージョンにログインし、コンソールのネットワークを開き、リクエストをランダムに見つけ、リクエスト ヘッダーの Cookie をチェックしてコピーします`、//独自のものを使用する}、//関連するリクエスト ヘッダー}、 //メッセージプッシュ関連のパラメータ pushPlus WeChatパブリックアカウントをフォローして、1対1のプッシュコールパラメータを取得します。pushPlusを宣伝するためではありません: { url: `http://www.pushplus.plus/send`, //WeChatプッシュURL token: `これはPushPlusから取得したトークンです。公式アカウントをフォローし、公式ウェブサイトを開いて1対1のプッシュを見つけることでトークンを取得できます。`, //広告なし、無料です} } このファイルで変更する必要がある内容は主に、それぞれ Nuggets インターフェース リクエストと wx メッセージ プッシュに使用される ここでは wx メッセージプッシュの 最後に、コード( ここでは一部を簡単に抜粋します。コード全体を載せるのは長すぎるので、サインインとスケジュールタスクの部分を中心に載せます。プロジェクト全体を Github と Gitee にアップロードしますので、どなたでもダウンロードして勉強していただけます(できればスターを付けてください (・ω<)☆)。 //必要なパッケージファイル const axios = require("axios"); const スケジュール = require("ノードスケジュール"); //関連パラメータはファイルに保存されます const { nuggets, pushPlus } = require("./config"); /** * 現在の時刻のフォーマットされた時間を取得します * @param {String} key js date関数文字列を呼び出します * @returns 現在の時刻のフォーマットされた文字列 */ const getNowTime = (キー) => { nowTime = ``; とします。 試す { nowTime = 新しいDate()[キー](); } キャッチ (e) { nowTime = `時間関数の取得中にエラーが発生しました! `; console.error(`日付関数を渡してください——${e}`); } nowTime を返します。 } /** * ナゲット自動サインインリクエストメソッド */ 定数hacpaiSignRequest = 非同期() => { console.log(`\n\n------${getNowTime(`toLocaleDateString`)} - サインインを開始します------\n`); const { headers, signInUrl } = nuggets; //サインイン関連のパラメータ const res = await axios({ url: サインインURL、 メソッド: `post`, ヘッダー、 }); (res && res.data)の場合{ jsonMsg を JSON.stringify(res.data); とします。 console.log(`\n ${jsonMsg} \n \n ------ ${getNowTime(`toLocaleTimeString`)} サインインに成功しました------\n`); pushMsg(`Nuggets sign-in result`, res.data); //サインイン成功後にメッセージをプッシュ //サインイン成功後、30秒以内に無料抽選の数を確認する setTimeout(() => { フリーチェック(); }, Math.random() * 30 * 1000) } それ以外 { コンソールログ(res); console.log(`\n ------ ${getNowTime(`toLocaleTimeString`)} サインインに失敗しました------ \n`); pushMsg(`Nuggets サインイン結果`, { 'サインイン失敗': res.data }); //サインイン成功後にメッセージをプッシュします} } //時間指定トリガータスク const signTask = () => { //毎日6:00~6:10の間にランダムにサインインする schedule.scheduleJob("0 0 6 * * *", () => { タイムアウトを設定する(() => { hacpaiSignRequest(); //サインイン関数}, Math.random() * 10 * 60 * 1000) }) } //タスクの実行を開始します console.log(`タスクの実行を開始します - ${getNowTime('toLocaleString')}`); タスクに署名します。 ここのコードは、いくつかの機能が組み込まれていないため、そのまま使用することはできません。ここに書かれているロジックは主にサインイン -> 無料抽選回数の照会 -> 抽選です。このプロセスは、毎日 6:00-6:10 の間の任意の時間にランダムにトリガーされます (ハードコードされてロボットとみなされるのではないかと心配です!!!∑(゚Д゚ノ)ノ)。コードの記述は非常に簡単です。主に、要求ロジックを整理し、関連するインターフェイスを見つけるだけです。最後に、どのリクエスト パッケージを使用しても、http リクエストであれば、これらの機能を完了できます。 最後に、 この記事では主に wx メッセージ プッシュを使用します。電子メール メッセージ プッシュに関するご要望がございましたら、コメント欄でお知らせください。後ほど、電子メール メッセージ プッシュに 5. まとめと言いたいこと最初はちょっと難しいかなと思いましたが、実際にやってみると、書くのはそれほど難しくないことがわかりました。主に、自分の心理的な障壁、怠惰、やる気のなさを克服する必要があります。大学時代の感覚を取り戻したいと思っています。できるかどうかは関係なく、とにかく勇気を出してやります。解決方法は必ずあります。ただ、時間がかかるだけです。この方法でのみ、自分を成長させることができると信じています。頑張ってください!リトルD!そしてこのブログを読んでくださっている皆さんも、ぜひ一緒に頑張ってください! ( ̄▽ ̄)/ 6. 関連するソースコードと参考ブログソースコード gitee 自動チェックインJueJin github: 自動チェックインJueJin お借りした記事の作者さんのブログ(順不同(*❦ω❦)): ナゲッツは契約を逃さない!自動サインインと自動無料抽選 それを実現するには 100 行のコードが必要です。ナゲットの自動サインインと抽選とメールリマインダーのクラウド機能バージョン〜 🎉 数行のコードで自動サインイン+WeChatプッシュを実現。サインインを忘れる心配はもうありません クラウド機能は定期的に金採掘コミュニティをトリガーします:自動サインイン、自動無料抽選🔥🔥 ナゲッツはいつもサインインを忘れますか? Nodeは自動的にサインインしてあなたを助けます ノードスクリプトを使用して自動サインインと抽選機能を実現する方法についての記事はこれで終わりです。ノード自動サインインと抽選の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き閲覧してください。今後とも 123WORDPRESS.COM を応援してください。 以下もご興味があるかもしれません:
|
<<: nginx でのリクエストのカウント追跡の簡単な分析
dockerfile またはコンテナ内で yum を実行すると、エラーが報告され、ソースが見つかりま...
昨年の前半から開発と娯楽のために Linux を使い始めましたが、今では Windows には戻れま...
目次1. ステートフック1. 基本的な使い方2. 更新3. 合併を実現する4. 遅延初期化状態5. ...
1. 対象環境Windows 7 64ビット2. 材料(1)VC++2010リリースパッケージ(64...
1.1 一般的なマーキング一般的なタグは開始タグと終了タグで構成されます。構文は次のとおりです: ...
目次1. ブロックスコープとは何ですか? 2. ブロックスコープが必要なのはなぜですか? 3. 関数...
目次序文1. MySQLをアンインストールする2. MySQLをインストールする要約する序文学習中に...
デバッグブランチプロジェクトの通常の開発中に、以前にリリースされたバージョンにバグがある場合がありま...
目次el-scrollbar スクロールバーel-uploadはクリックをシミュレートしますel-s...
MySql インデックスインデックスの利点1. 一意のインデックスまたは主キー インデックスを作成す...
TeamCenter12はアカウントのパスワードを入力し、ログインをクリックすると、404または50...
レスポンシブデザインとは、ウェブサイトの開発プロセス中に、ユーザーの操作やデバイス環境に応じて対応す...
コンセプト紹介: 1. px (ピクセル):仮想的な長さの単位で、コンピュータ システムのデジタル画...
目次G2チャートについて使用テンプレートで使用される完全なコード (棒グラフ)世界地図を追加するG2...
背景コメントに似た機能を開発する場合は、必要に応じてすべてのコメントのサブセットをクエリする必要があ...