PHP を使用して単純なコンテンツ コレクター コードを作成する_PHP チュートリアル
コレクターは通常泥棒プログラムと呼ばれ、主に他の人の Web ページのコンテンツをキャプチャするために使用されます。コレクターの作成に関しては、正規表現の知識があれば、収集する Web ページをリモートで開き、必要なコンテンツに一致する正規表現を使用するだけで済みます。自分だけのコレクターを作ることができます。
数日前に小説を連載するためのプログラムを作りました。更新の手間が怖かったので、八路中国語ネットワークから情報を収集するためにコレクターを作成しました。機能は比較的単純で、ルールはありません。カスタマイズすることはできますが、一般的なアイデアはその中に含まれており、定義ルールは自分で拡張できます。
PHP をコレクターとして使用するには、主に file_get_contents() と preg_match_all() の 2 つの関数を使用します。前者は Web ページのコンテンツをリモートで読み取るためのものですが、後者は通常の関数です。必要なコンテンツを抽出します。
それでは関数の実装についてステップごとに説明していきます。
小説を収集しているので、最初に本のタイトル、著者、ジャンルを抽出する必要があります。その他の情報は必要に応じて抽出できます。
ここでの目標は「明王朝に戻って王子になる」です。まず参考文献ページを開き、リンク: http://www.86zw.com/Book/3727/Index.aspx
いくつか開いたら、さらに多くの本を参照すると、その本の名前の基本的な形式は http://www.86zw.com/Book/书号/Index.aspx なので、スタート ページを作成して 収集が必要なデータを入力します。今後、収集が必要な書籍番号を $_POST['number'] の形式で受け取ることができます。書籍番号を受け取ったら、次に参考文献ページを作成します: $url=http://www.86zw.com/Book/$_POST['number']/Index.aspx もちろん、これはです。簡単に説明すると、$_POST['number'] の正当性を実際に作成するときに確認するのが最善です。
URLを構築したら、書籍情報の収集を開始できます。 file_get_contents() 関数を使用して書誌ページ $content=file_get_contents($url) を開きます。これにより、書誌ページのすべてのコンテンツを読み取ることができます。次のステップは、本のタイトル、著者、ジャンルなどの情報を照合することです。ここでは本のタイトルを例に挙げますが、それ以外はすべて同じです。参考文献ページを開いてソース ファイルを表示し、「「Back to the Ming Nursing as a Prince」」を見つけます。これは抽出する本のタイトルです。 。本のタイトルを抽出するための正規表現: /(.*?)/ の場合は、preg_match_all() 関数を使用して本のタイトルを抽出します: preg_match_all("/< span class ="newstitle">(.*?)/is",$contents,$title); このように、$title[0][0] の内容が必要なタイトルになります ( preg_match_all 関数の使用方法は、Baidu にアクセスして確認できます。ここでは詳しく説明しません)。書籍情報を取得したら、次のステップは章のコンテンツを取得することです。章のコンテンツを取得するには、まず各章のアドレスを見つけて、リモートで章を開き、通常のルールを使用してコンテンツを取得します。それをデータベースに保存するか、HTML 静的ファイルを直接生成します。これは章リストのアドレスです: http://www.86zw.com/Html/Book/18/3727/List.shtm これは参考文献ページと同じであり、次のルールがあることがわかります。 http://www.86zw.com/Html/Book/分類番号/書籍番号/List.shtm で見つかります。書籍番号は先ほど取得しました。ここで重要なのは、分類番号を見つけることです。分類番号は、
preg_match_all("/Html/Book/[0-9]) で見つけることができます。 {1,}/[0- 9]{1,}/List.shtm/is",$contents,$typeid); これだけでは不十分です。切り取り機能も必要です:
PHP コードは次のとおりです:
function Cut($string,$start,$end){
$message =explode($start,$string); end,$message[1]); return $message[0];} このうち、$string は切り取る内容、$start は開始位置、$end は終了位置です。カテゴリ番号を取得します:
$start = "Html/Book/";
$end
= "List.shtm";
$typeid = Cut($typeid[0][0],$start,$end);
$typeid =explode("/",$typeid);[/php]
$ustart = """;
$uend
= """;
//t はタイトルの略称を表します
$tstart = ">";
$tend
//Getパス、例: 123.shtm,2342.shtm,233.shtm
preg_match_all("/"[0-9]{1,}.(shtm)"/is",$chapterurl,$url); /タイトルを取得します。例: 第 1 章 善良な人々の 9 つの世界
preg_match_all("// is",$file,$ title);
$count = count($url[0]);
for($i=0;$i{
$u = Cut($ url[0][$i],$ustart,$uend);
$t = Cut($title[0][$i],$tstart,$tend);
}
$ 配列配列はすべてのチャプターアドレスです。この時点で、コレクターは半分完了し、各チャプターアドレスをループして読み取り、内容を照合します。これは比較的単純なので、ここでは詳しく説明しません。さて、今日はこれで終わりにしましょう。これほど長い記事を書くのは初めてなので、言葉の整理に問題があることは避けられません。
http://www.bkjia.com/PHPjc/318572.html

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。
