PHP通过DOMDocument对象来抓取网页中的指定class的内容

Posted bird-eat-vegetable

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP通过DOMDocument对象来抓取网页中的指定class的内容相关的知识,希望对你有一定的参考价值。

 

<?php

function getTagClassContent($url, $tagName, $className) //要抓取的网页, 要抓取的Tag名, 要抓取的Class名
{
    $doc = new DOMDocument();
    @$doc->loadhtml(file_get_contents($url)); 
    $nodes = $doc->getElementsByTagName($tagName); 
    
    $res = array();
    foreach($nodes as $n) {
        if($attrItemClass = $n->attributes->getNamedItem(‘class‘)) {
            if($classes = explode(‘ ‘, $attrItemClass->textContent)) {
                if(in_array($className, $classes)) {
                    
                    $res[] = $n->textContent;
                }
            }
        }
    }
    
    return $res;
}

$res = getTagClassContent(‘http://www.dyhjw.com/meiyuanzhishu‘, ‘span‘, ‘nom‘);

var_dump($res);

/*
输出:
array(1) {
  [0]=>
  string(7) "92.7375"
}
*/

 

以上是关于PHP通过DOMDocument对象来抓取网页中的指定class的内容的主要内容,如果未能解决你的问题,请参考以下文章

PHP - DOMDocument/DOMConfiguration

使用PHP的cURL库进行网页抓取

使用 PHP 从网页元素中获取文本

如何使用JAVA语言抓取某个网页中的邮箱地址

抓取通过JavaScript呈现的网页。 PhtantomJs还是其他任何工具?

PHP DOMDocument - 获取 BODY 的 html 源代码