ホームページ >バックエンド開発 >PHPの問題 >PHPクローラーを実行する方法

PHPクローラーを実行する方法

(*-*)浩
(*-*)浩オリジナル
2019-10-19 10:16:273258ブラウズ

クローラーを作成するというと、誰もが最初に Python を思い浮かべるかもしれませんが、実は PHP を使用してクローラー プログラムを作成することもできます。 PHP は常にシンプルで使いやすく、私は個人的に、PHPspider フレームワークを使用して単純なクローラーを作成できることをテストしました。

PHPクローラーを実行する方法

マッチング方法では XPach 構文を使用します。 (推奨学習: PHP ビデオ チュートリアル )

<?php
require &#39;/vendor/autoload.php&#39;;
use phpspider\core\phpspider;

/* Do NOT delete this comment */
/* 不要删除这段注释 */

$configs = array(
&#39;name&#39; => &#39;简书&#39;,
&#39;log_show&#39; =>false,
&#39;tasknum&#39; => 1,
//数据库配置
&#39;db_config&#39; => array(
&#39;host&#39;  => &#39;127.0.0.1&#39;,
&#39;port&#39;  => 3306,
&#39;user&#39;  => &#39;root&#39;,
&#39;pass&#39;  => &#39;&#39;,
&#39;name&#39;  => &#39;demo&#39;,
),
&#39;export&#39; => array(
&#39;type&#39; => &#39;db&#39;,
&#39;table&#39; => &#39;jianshu&#39;,  // 如果数据表没有数据新增请检查表结构和字段名是否匹配
),
//爬取的域名列表  
&#39;domains&#39; => array(
    &#39;jianshu&#39;,
    &#39;www.jianshu.com&#39;
), 
//抓取的起点
&#39;scan_urls&#39; => array(
    &#39;https://www.jianshu.com/c/V2CqjW?utm_medium=index-collections&utm_source=desktop&#39;
),
//列表页实例
&#39;list_url_regexes&#39; => array(
    "https://www.jianshu.com/c/\d+"
),
//内容页实例
//  \d+  指的是变量
&#39;content_url_regexes&#39; => array(
    "https://www.jianshu.com/p/\d+",
),
&#39;max_try&#39; => 5,

&#39;fields&#39; => array(
    array(
        &#39;name&#39; => "title",
        &#39;selector&#39; => "//h1[@class=&#39;title&#39;]",
        &#39;required&#39; => true,
    ),
    array(
        &#39;name&#39; => "content",
        &#39;selector&#39; => "//div[@class=&#39;show-content-free&#39;]",
        &#39;required&#39; => true,
    ),
),
);

$spider = new phpspider($configs);
$spider->start();

コードを完成したら、キャプチャするコンテンツに応じて対応するデータベースとデータ テーブルを忘れずに構築してください。また、フィールドは整列してください。

次に、cmd に

php -f d:\jianshu\spider.php

と入力し、次のように実行します

PHPクローラーを実行する方法

以上がPHPクローラーを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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