netwons

تگ های مخفی در کدهای html برای فراخوانی

netwons ۱۳۹۷/۱۰/۱۴ مباحث عمومی برنامه‌نویسی

یک سری تگ ها وقتی inspect میگیریم در مروگر نمایش میده اما زمانی که بخواهیم با رجکس آن تگ ها را بیرون بکشیم پیدا نمیکند مشکل کار کجاس

الان من میخواهم این <li class="bg-item item-ARbit">gsdhfgh</li> تگ ها رو با preg-match_allبیرون بکشم اما نمایش نمیده احساس میکن مخفی است

پاسخ‌ها به این تاپیک
سید جعفر اسمعیلی
سید جعفر اسمعیلیطراح و توسعه دهنده وب
۱۳۹۷/۱۰/۱۷

دوست عزیز دقیق نمی دونم چیکار می کنید. قبلا یه پروژه برای خودم می نوشتم که کاربر با وارد کردن آدرس سایت بره داخل صفحه همه ای تگ هاش a  رو دربیاره و سپس اگه فایل ویدیو بود همه ای اونها رو به سرور خودم منتقل کنه بعد یک لینک درست کنه به کاربر نمایش بده و کاربر از داخل سرور من دانلود کنه فایل ها رو.

اگه شما هم زیاد با رندر کردن صفحه ها کار دارید پیشنهاد می کنم با DomDocument کار کنید می تونید هر تگی رو با هر اتریبوتی محتواشو بگیری فرقی هم نداره تگ مخفی باشه یا نباشه درکل بسته به کار که می خواهید انجام بدهید از regex یا DomDocument و یا پیشنهادی که دوست عزیزمان داده XML استفاده کنید.

در اینجا من نمونه کد استفاده از  DomDocument رو براتون می زارم.

مثلا این تگ ها رو می خوایم رندی کنیم:

<ul class="list-group">
                <li class="list-group-item">
                         <a style='display:none' href="/signin?redirect=/forum/9522/خارج-کردن-متنی-بین-تگ-a-به-کمک-رجکس-در-php" class="btn btn-default" id="header-signin-btn">
                    ورود                </a>
                    </li>
              <li  class="list-group-item">
                          <a href="/signup?redirect=/forum/9522/خارج-کردن-متنی-بین-تگ-a-به-کمک-رجکس-در-php" class="btn btn-primary" id="header-signup-btn">
                    ثبت‌نام                </a>
                </li>
            </ul>
            

داخل فایل render.php

$dom = new \DOMDocument();
$dom->loadHTML($htmlFile);
$links  = $dom->getElementsByTagName('a');
foreach ($links as $link) {
   print_r($link);
}
## after rendering

// DOMElement Object
// (
//     [tagName] => a
//     [schemaTypeInfo] => 
//     [nodeName] => a
//     [nodeValue] => 
//                     ورود                
//     [nodeType] => 1
//     [parentNode] => (object value omitted)
//     [childNodes] => (object value omitted)
//     [firstChild] => (object value omitted)
//     [lastChild] => (object value omitted)
//     [previousSibling] => (object value omitted)
//     [nextSibling] => (object value omitted)
//     [attributes] => (object value omitted)
//     [ownerDocument] => (object value omitted)
//     [namespaceURI] => 
//     [prefix] => 
//     [localName] => a
//     [baseURI] => 
//     [textContent] => 
//                     ورود                
// )

اینم داده های که درباره تگ a در اختیار شما می زاره.