Blog Yazısı

Php ile Sayfadaki Tüm Linkleri Toplamak

Php ile Sayfadaki Tüm Linkleri Toplamak
Bir bot sistemi yazmak istediğinizde genellikle kullanmanız gereken ihtiyaçlardan birisidir diyebilirim. Bot yapımında mantık budur. İlk olarak file_get_contents kullanarak sayfayı komple okumaktır. Ardından file_get_contents kullanarak parçalama işlemi yapabilir ve istediğimiz bütün alanları alabiliriz. Mantıken bize linkler lazım olduğu için <a href=””></a> bölümünü okumamız gerekecek. Php ile Sayfadaki Tüm Linkleri Toplamak için aşağıdaki yolu izlemek yeterli olacaktır.
$page = file_get_contents("http://www.harunalp.com");

preg_match_all("/href=\"([^\"]+)/i",$page,$link);
        
foreach ($link[0] as $row) 
{
    echo $row ."<br>";
}
Çıktı: href=”http://www.harunalp.com/category/c-sharp/ href=”http://www.harunalp.com/category/javascript/ href=”http://www.harunalp.com/category/php/ href=”http://www.harunalp.com/category/jquery/ href=”http://www.harunalp.com/category/java/ … şeklinde olacaktır.Aynı şekilde sadece bir kategoriye ait yazıları almak istersek de site adresi/category yazarak erişebiliriz. Eğer linklerin başındaki href yazısını kaldırmak isterseniz basit bir şekilde str_replace kullanarak ortadan kaldırabilirsiniz. Foreach içindeki alanı aşağıdaki gibi düzenleyerek href alanını temizleyebilirsiniz.
echo str_replace('href="','',$tek) ."<br>";
Bu şekilde php ile sayfalardan bilgi toplamak tüm linkleri çekme işlemini rahatlıkla yapabilirsiniz. Bot yapımının ilk ve önemli aşamalarındandır kendileri 🙂

← Bloga dön

Son yazılar