ホームページ > バックエンド開発 > PHPチュートリアル > php基于Snoopy解析网页html的方法_php技巧

php基于Snoopy解析网页html的方法_php技巧

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-05-16 20:11:05
オリジナル
1161 人が閲覧しました

本文实例讲述了php基于Snoopy解析网页html的方法。分享给大家供大家参考。具体实现方法如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

set_time_limit(0);

$user = array('20517', '20518');

header("content-Type: text/html; charset=utf-8");

require_once './Snoopy.php';

$snoopy = new Snoopy();

//$uri = 'http://www.juzimi.com/meitumeiju';

$uri = 'http://www.juzimi.com/meitumeiju?page=1';

$snoopy->fetch($uri);

$con = $snoopy->getResults();

$doc = new DOMDocument();

$doc->loadHTML($con);

/* make a result array ... */

$result = [];

/* go through all nodes which have class="baby" ... */

$i = 0;

foreach( ( new DOMXPath( $doc ) )->query( '//*[@id="bdshare"]' ) as $element ) {

  $row = $doc->saveHTML($element);

  $start = stripos($row, '{');

  $end = stripos($row, '}');

  $len = $end - $start + 1;

  $json = substr($row, $start, $len);

  $json = str_replace("'", '"', $json);

  $obj = json_decode($json);

  $pic = $obj->pic;

  $desc = $obj->desc;

  $filename = '/Uploads/meiju/card' . date('ymdhis') . $i . '.png';

  $file = '/alidata/www/test' . $filename;

  $image = file_get_contents($pic);

  file_put_contents($file, $image);

}

ログイン後にコピー

希望本文所述对大家的php程序设计有所帮助。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート