PHP Script для загрузки исходного кода веб-страницы и поиска определенной строки

Мне нужна помощь в создании кода PHP, который выполняет следующие действия:

  1. Доступ к веб-сайту (www.example.com)
  2. Загрузите исходный код в строковую переменную
  3. Найдите эту конкретную строку для определенного содержимого, например

    <div class="news" title="news alert">Click to get news alert</div>

В основном мне нужно искать исходный код для title="news alert"

Спасибо вам всем,

Related of "PHP Script для загрузки исходного кода веб-страницы и поиска определенной строки"

Вы можете использовать PHP DOM :

 $text = file_get_contents('http://example.com/path/to/file.html'); $doc = new DOMDocument('1.0'); $doc->loadHTML($text); foreach($doc->getElementsByTagName('div') AS $div) { $class = $div->getAttribute('class'); if(strpos($class, 'news') !== FALSE) { if($div->getAttribute('title') == 'news alert') { echo 'title found'; } else { echo 'title not found'; } } } 

Или, возможно, Query Path, который пытается подражать стороне сервера jQuery:

 $text = file_get_contents('http://example.com/path/to/file.html'); if(qp($text)->find('div.news[title="news alert"]')->is('*')) { echo('title found'); } else { echo('title found'); } 

Вы можете использовать DOMXPath, чтобы найти его:

 $dcmnt = new DOMDocument(); $dcmnt->loadHTML( $cntnt ); $xpath = new DOMXPath( $dcmnt ); $match = $xpath->query("//div[@title='news alert']"); echo $match->length ? "Found" : "Not Found" ; 

Демо: http://codepad.org/CLdE8XCQ

Это довольно просто:

 $html = file_get_contents('http://site.com/page.html'); if (strpos($html,'title="news alert"')!==false) echo 'title found'; 
 $page = file_get_contents('http://www.example.com/'); if(strpos($page, "title=\"news alert\"")!==false){ echo 'title found'; } 
 $url = 'http://www.example.com/'; $page = file_get_contents($url); if(strpos($page, 'title="news alert"') !==false || strpos($page, 'title=\'news alert\'') !==false) { echo 'website with news alert found'; } else { echo 'website not found'; }