PHP: 1 saniye (file_get_html yoluyla ()) sayfa kaynak Gecikme ayrıştırma

0 Cevap php

Ben dinamik ana sayfa yükleme tamamlandıktan sonra içerik sadece milisaniye yüklemek gibi görünüyor bir sayfa denemek ve kazımak için PHP kullanıyorum.

Ben ayrıştırılmış html şeyleri kapmak için sayfa ayrıştırmak için curl kullanarak ve simpleHtmlDom duyuyorum.

DOM çapraz ve html dışında () şeyler patlamaya benim çabaları hiçbir şey dönmek. Benim tek fikir bu içeriği after ana sayfa yüklendiğinde yükleniyor olduğu idi.

İşte benim kodudur.

<? 
 $url = 'http://www.facebook.com/OneAndroidAppaDay';
 $scrapeUrl = 'http://www.facebook.com/OneAndroidAppaDay';

  include_once('simple_html_dom.php');
  require_once("bitly.php");

  $userAgent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)';
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
  curl_setopt($ch, CURLOPT_URL,$scrapeUrl);
  curl_setopt($ch, CURLOPT_FAILONERROR, true);
  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  curl_setopt($ch, CURLOPT_AUTOREFERER, true);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
  curl_setopt($ch, CURLOPT_TIMEOUT, 10);
  $html = curl_exec($ch);
  if (!$html) {
   echo "<br />cURL error number:" .curl_errno($ch);
   echo "<br />cURL error:" . curl_error($ch);
   exit;
  }

  $appBitlyUrl = $html->find('div[class=UIStoryAttachment_Title]',0)->find('a',0)->href; // fail :(
  echo 'Bitly Url:  ' . $appBitlyUrl;
?>

Bu hata ile (inline açıklama ile gösterilen) 24 hattı dışarı bombalama:

Ölümcül hata: hat 24 üzerinde / home / xxxxxxxx / public_html / xxx.xx / xxxx.php olmayan bir nesne üzerinde bir üye işlev find () Çağrı

Bu sayfanın html kaptığı önce bir saniye veya iki beklemek yapmak için bir yolu var mı? Ya da belki birileri daha iyi bir fikir vardır?

Teşekkürler

Markos

0 Cevap