19
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[phpQuery] を使ってwebサイトをスクレイピングする

Posted at

概要

スクレイピングはサイトの分析をするときに使える便利な技術です。phpQueryを使って簡単に行うことができます。使い方によっては、サーバーに負荷がかかったりすることもありますので、自身のサイトで使用してください。

必要なもの

  • phpQuery
  • MAMP(phpの実行環境を作成)

ダウンロード

phpQuery

使い方

ファイル構成を整え、index.phpに取得したい情報を記述したのちMAMPを使ってphpを実行します。

ファイル構成

scraping
 ├ index.php
 └ phpQuery-onefile.php

ソースコード

URLにスクレイピングしたいサイトをhttpから記載します。

index.php
<?php

// phpQueryの読み込み
require_once("./phpQuery-onefile.php");

// 取得したいwebサイトを読み込み
$html = file_get_contents("取得したいwebサイトのURL");

// 取得したい情報を記述(以下を参照)

?>

情報を取得して表示する

下記のコードを追記することで情報を表示することができます。

見出しの取得と表示

echo phpQuery::newDocument($html)->find("h3")->text();

画像の取得と表示

echo phpQuery::newDocument($html)->find("img")->text("src");

参考サイト

基本情報
https://qiita.com/dia/items/3cf963fa89b08b87e8ef

繰り返し要素
https://qiita.com/zaburo/items/465ca691aebad2b5691e
https://person-link.co.jp/web/964

CSVヘの書き出し
https://qiita.com/inoyoh/items/0b8a9f25bdfcf73d2f3b#_reference-f94bb7e75cf94119ac30

キャッシュ化
https://www.tam-tam.co.jp/tipsnote/program/post9744.html

おそらく役立つ情報

痒いところに手が届くかもしれない記事を書いています。
フォローしてくれるとやる気になります!

19
23
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?