SimpleHTMLDom ile Sorun

0 Cevap

Ben bir sayfa URL'lerin bir listesini çekmek için SimpleHTMLDOM kullanarak bir PHP komut dosyası ile ilgili bir sorun için çalıştırmak.

Ben bağlantıları kapalı okumak istediğiniz bir URL belirtirseniz, senaryo bana herhangi bir sorun veriyor:

          $url='http://www.example.com';

          $blogpost = file_get_html($url);
          foreach ($blogpost->find('a[href*=example1]') as $example1link) {
              $example1link = $example1link->href;
              echo $example1link;
          }

Bütün bu www.example.com gelen www.example1.com tüm bağlantıları çekin ve bana geri yankı olduğunu gelmez.

Ama ben komut dosyası URL'leri içeren bir metin dosyasını beslemek çalıştığınızda:

  $urlarray = split("\n", file_get_contents('urls.txt'));

     foreach ($urlarray as $url) {

          $blogpost = file_get_html($url);
          foreach ($blogpost->find('a[href*=example1]') as $example1link) {
              $example1link = $example1link->href;
              echo $example1link;
          }
  }

Bana aşağıdaki hatayı veriyor:

Warning: file_get_contents() [function.file-get-contents]: Filename cannot be empty  
in simple_html_dom.php  on line 39

Bu işlevi simple_html_dom.php yok olanlar için hata anlamına gelir:

function file_get_html() {
  $dom = new simple_html_dom;
  $args = func_get_args();
  $dom->load(call_user_func_array('file_get_contents', $args), true);
  return $dom;
 }

Ben $ blogpost için değer atamak hemen önce hatta eko $ url yapabilirsiniz. () Sorun file_get_html için $ url değişkeni geçirmeden gibi görünüyor. Ama kazımak için hedef bağlantıları olan bir txt dosyası kullanabilirsiniz sadece.

Ben çok PHP yeni (ve genel olarak programlama) ve ben hemen hemen bütün gün aradım ve ben ne yapıyorum yanlış bulamıyorum.

Herhangi bir yardım takdir edilmektedir.

Teşekkürler!

0 Cevap