ホームページ >バックエンド開発 >PHPチュートリアル >PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

藏色散人
藏色散人転載
2021-12-20 10:42:025651ブラウズ

php を使用して授業ワークショップでの自動質問応答を実現します

オープンソース アドレス

https://github. com/WOSHIZHAZHA120/ kgc_cheater

一般的なアイデア

  • フロント デスクですべての質問を取得し、マークを付けます
  • バックグラウンドで回答を記録します
  • バックグラウンドから取得する 答えは自動的に入力されます

実装原則

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)
まず、すべての質問は画像であることがわかりますが、URL には imageType=2
という共通点があります。その後、コードに直接移動します [推奨学習: 「PHP ビデオ チュートリアル」 "]

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

##Get すべての画像アドレスがバックエンドに送信され、バックエンドはすべての画像の URL アドレスを受け取ります

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

これはソース コードの一部であり、この

getQuestionIdFromImageUrlについては後で説明します次に、新しいデータベースを作成します。
kgc_cheater## という名前のデータベースを作成しました。 # およびテーブル question_answers
テーブル構造は次のとおりです

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)Medoo/Medoo ライブラリをデータベース リンクとして使用します

次に、データベースから答えを取得するロジックを作成します

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)どんな

マップがあるのか​​知りたいかもしれません

というのは、フロントエンドの画像アドレスとバックエンドの画像アドレスの動作が異なるためです。 お見せしましょう getQuestionIdFromImageUrl
理解できるかもしれません

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)各ユーザーの画像アドレスが異なることが判明したため、タイトルが同じでも各アカウントの画像アドレスは変わらないため、画像アドレスについて説明します計算は正規です色々調べてみたところ、実際には

relativePath

パラメータを/で割って、2番目の部分から指定したオフセット値を引いていることが分かりました。後で説明しますバックグラウンドから直接回答をリクエストし、マップと回答パラメータを返します

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)##マップの定義

は実際には

$url です=> $question_id answers の定義は
['question_id' => $question_id, 'answer' => $answer] です

図に示すように、3 つの親を使用して ul.sec2 と入力して回答リストを取得し、回答を含む要素を見つけてクリックをシミュレートします。PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)これで完了です。自動応答

戻る オフセット値の取得に関しては、ログイン時に URL

##559634PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き) を確認してください。はオフセット値であり、回答を入力します。 Page

これは画像のソース アドレスです

https://tiku.kgc.cn/testing/cdn/getImage?relativePath=0069000/1543312740097/e19f21615ab8e9866619bf47c3b5b59c.jpg&imageType= 2
Get 元の画像 ID は 0069000/1543312740097

オフセット値を使用して 2 番目のパラメーターを減算し、

1543312180463# を取得します。 ##最後に質問 ID を取得します:
0069000/ 1543312180463他のアカウントも実験後に同じ ID を取得できます。これがデータベースに保存される実際の ID になります。

入力すると、メイン ページ。これを記録するスクリプトがあります。Cookie を使用して保存します。コードを添付します。

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

解析インターフェイスに正解があります

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

各部分を .sec.post # で囲みます## 次に、下に移動して
.sec2 を取得し、次に img を取得して、url を取得して画像 ID を取得します。また、
relativePath も取得しますが、そこにはバイアスを適用する必要はありません。値は移動されており、データベースに直接保存できます。同様に、答えは
.sec3にあり、下に進みます.pad10次に、下に進みますem:eq(0)次のように直接取得します

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

次に、バックエンドに送信してスローします記録のためにデータベースに保存します。

そして、記録されたメッセージをフロントエンドに送信します。

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

バックエンド記録コード

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)# #その後、フロントエンドとバックエンドの連携、質問の自動記録、自動回答

最後に自動回答

テスト用紙を入力した後、自動入力後にテスト用紙を自動更新するコードが追加されます。図に示す

##fuxiAutoPHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)# の後の数字の文字列について ##人それぞれ違うかもしれません。チュートリアルを取得するには件名 ID を添付してください

最初に入力します

開発者ツールを使用してテスト開始ボタンを見つけます

PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)

##javascript:unitExam(

1098001001

)PHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)これ

1098001001

は件名IDですここの最後の桁は1から7ですそこで、1から7の整数をランダムに生成する自動乱数を書きました
変更も非常に簡単です

画像の 1 と 7 を自分のものに変更します。最小値と最大値で十分です。

以上がPHP が「自動質問ブラッシング」をどのように実装するかを分析する (アイデア付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。