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 でのリクエストのカウント追跡の簡単な分析
目次序文 - Vue ルーティング1. 最も基本的なルーティング構成1. router/index....
目次序文1. 文字列の長さを取得する2. 文字列の指定された位置の値を取得する(1) charAt(...
目次概要画像圧縮とはJPEG/JPG JPGの利点JPGの使用シナリオJPGの欠点MozJPEG を...
目次TomcatをインストールするTomcat 圧縮パッケージをダウンロードTomcatには3つの主...
目次すべてのストレージエンジンを表示InnoDB ストレージ エンジンMyISAM ストレージエンジ...
目次問題を見つける1. 改行と復帰を削除する方法2. SELECTクエリで「改行と復帰」を無視する方...
達成される効果は、固定ズームが 2 倍になり、マウスが左側の画像領域に入るとマスク レイヤーが表示さ...
1. ノードサーバーのセットアップ + データベース接続ここでの操作は比較的簡単でわかりやすいです。...
目次1. 父から息子へ2. 息子から父へ3. ブラザーコンポーネント通信(バス) 4. ref/re...
1. 基本的なテキスト要素を使用してコンテンツをマークアップするまず表示効果を見てみましょう:対応す...
この記事では、例を使用して、MySQL ストアド プロシージャでの if ステートメントの使用方法を...
シナリオ最大 10000 要素のリストを正しくレンダリングする方法。無限ドロップダウン読み込みテクノ...
目次初期ビューVue開発環境の構築Vueインスタンスの作成Vue テンプレート構文Vue データバイ...
1. シナリオ表示Tomcat ログに次の例外情報が時々報告されます。何が起こっているのでしょうか...
ご存知のとおり、mailto は Web デザインと制作において非常に実用的な HTML タグです。...