ホームページ  >  記事  >  バックエンド開発  >  PHP と phpSpider を使用して Web サイトをクロールするにはどうすればよいですか?

PHP と phpSpider を使用して Web サイトをクロールするにはどうすればよいですか?

王林
王林オリジナル
2023-07-22 22:45:301395ブラウズ

PHP と phpSpider を使用して、Web サイトから対象のデータをクロールするにはどうすればよいですか?

インターネットの発展に伴い、貴重なデータ リソースを提供する Web サイトがますます増えています。開発者にとって、このデータをいかに効率的に取得するかが重要な課題となっています。この記事では、開発者が自動データ収集の目標を達成できるように、PHP と phpSpider を使用して Web サイト上の対象データをクロールする方法を紹介します。

ステップ 1: phpSpider のインストールと構成

まず、Composer を通じて phpSpider をインストールする必要があります。コマンド ライン ツールを開き、プロジェクトのルート ディレクトリを入力し、次のコマンドを実行します。

composer require chinaweb/phpspider @dev

インストールが完了したら、phpSpider 構成ファイルをプロジェクトのルート ディレクトリにコピーする必要があります。次のコマンドを実行します:

./vendor/chinaweb/phpspider/tools/system.php

システムは構成ファイル (config.php) をプロジェクトのルート ディレクトリに自動的にコピーします。 config.php ファイルを開いて次の構成を行います:

'source_type' => 'curl', // 抓取数据的方式,这里使用curl
'export' => array( // 数据导出配置
    'type' => 'csv', // 导出类型,这里使用csv
    'file' => './data.csv' // 导出文件路径
),

ステップ 2: クローラー スクリプトを作成します

spider.php という名前のファイルを作成し、次のコードを作成します:

<?php
require './vendor/autoload.php';

use phpspidercorephpspider;

/* 爬虫配置 */
$configs = array(
    'name' => '数据抓取示例',
    'log_show' => true,
    'domains' => array(
        'example.com' // 目标网站域名
    ),
    'scan_urls' => array(
        'http://www.example.com' // 目标网址
    ),
    'content_url_regexes' => array(
        'http://www.example.com/item/d+' // 匹配网站上需要抓取的数据页面URL
    ),
    'fields' => array(
        array(
            'name' => 'title',
            'selector' => 'h1', // 数据所在的HTML标签
            'required' => true // 数据是否必须存在
        ),
        array(
            'name' => 'content',
            'selector' => 'div.content'
        )
    )
);

/* 开始抓取 */
$spider = new phpspider($configs);
$spider->start();

上記のコードでは、「データ クロールの例」という名前のクローラー タスクを定義し、ターゲット Web サイトのドメイン名とクロールする必要がある Web ページの URL を指定します。フィールド フィールドでは、キャプチャする必要があるデータ フィールドと、対応する HTML セレクターを定義します。

ステップ 3: クローラー スクリプトを実行する

Spider.php ファイルを保存して閉じた後、コマンド ライン ツールを使用してプロジェクトのルート ディレクトリで次のコマンドを実行し、クローラー スクリプトを開始できます。 :

php spider.php

クローラーはターゲット URL のクロールを開始し、結果を指定されたファイル (./data.csv) にエクスポートします。

概要:

この記事では、PHP と phpSpider を使用して Web サイト上の対象データをクロールする方法の手順を紹介します。クローラー タスクを構成し、クロールする必要があるデータ フィールドを定義することで、開発者は自動データ収集の目標を簡単に達成できます。同時に、phpSpider は豊富な機能と柔軟な拡張性も提供し、実際のニーズに応じてカスタマイズできます。この記事が、Web サイトのデータをクロールする必要がある開発者に役立つことを願っています。

以上がPHP と phpSpider を使用して Web サイトをクロールするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。