[バックエンドのjQuery] - 無依存作曲軽量、超コンパクトクラス分析クロールページ

時には我々は、インターフェイスを完了アウト実行するためにクロールに関するいくつかの情報にページを必要とするcurl取得するためにbodyいくつかの時間を取得したいラベルを。モディを不当な扱いを受け、定期的に不当な扱いを受けたものを参照してください。


DOMのPHPモジュール

PHPは、拡張が付属していますhttp://php.net/dom

<?php
/**
 * @author         Shaowei Pu <[email protected]>
 * @CreateTime    2017-04-17T19:25:59+0800
 */

$doc = new DOMDocument();

$html = <<<HTML_SECTION
<html><head><title>Sunyanzi's Test</title></head>
<body>
  <h1>Hello World</h1>
  <a href="http://segmentfault.com/" id="onlylink">Hey Welcome</a>
</body></html>
HTML_SECTION;

$doc->loadHTML( $html );

$h1Elements = $doc->getElementsByTagName( 'h1' );
foreach( $h1Elements as $h1Node ){
    echo $h1Node->nodeValue;
} 
echo $doc->getElementById( 'onlylink' )->getAttribute( 'href' );

$xpath = new DOMXPath( $doc );
// also prints "http://segmentfault.com/" ... locate via h1 ... 

echo $xpath->evaluate('string(//h1[text()="Hello World"]/following-sibling::a/@href)'); 

あなたは、XPathに慣れるまで基本的には、待って、DOMあなたは、通常のよりもはるかに柔軟性のでしょう...


PhpQuery

使用PhpQueryはjqueryのに合わせて厳密に記述されたステップ、完全にカールクロールページを省略することができます

HTTPS://github.com/TobiaszCud ...

/**
 * @author         Shaowei Pu <[email protected]>
 * @CreateTime    2017-04-17T19:25:59+0800
 */
      \phpQuery::newDocumentFile('https://v.qq.com/x/cover/o5neekjf0pl6e0r.html');  
         libxml_use_internal_errors(true);
        // 腾讯视频的真实URL 
        $url = pq('link[rel="canonical"]')[0]->attr('href');


概要

  1. ウェブコレクションの多様性、正規表現を学習する態度を取らない場合は、ライブラリを使用するために柔軟であるべきです

  2. ロング怠惰を生きます!

おすすめ

転載: www.cnblogs.com/baimeishaoxia/p/12511901.html