یک سری تگ ها وقتی inspect میگیریم در مروگر نمایش میده اما زمانی که بخواهیم با رجکس آن تگ ها را بیرون بکشیم پیدا نمیکند مشکل کار کجاس
الان من میخواهم این <li class="bg-item item-ARbit">gsdhfgh</li> تگ ها رو با preg-match_allبیرون بکشم اما نمایش نمیده احساس میکن مخفی است
این li رو چه زمانی میخواید بگیرید که این متد بیرون بکشید !
سناریو کارو مقداری توضیح بدید لطفا
چندتا چیزو مطمئن شو یک اینکه اون تگا با js ساخته نشد باشن
دو اینکه کد regex درست زدی؟
ضمنا لینک بده ماهم ببینیم بهتر نظر بدیم
$u=urldecode('https://www.aparat.com/search/%D8%A2%D9%85%D9%88%D8%B2%D8%B4_%D9%81%D8%A7%D8%B1%D8%B3%DB%8C_Redis');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$u);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
$cc = curl_exec($ch);
curl_close($ch);
$kkj="/<li class=\"bg-item item-.*\">.*<\/li>/";
preg_match_all($kkj, $cc, $matt);
$file41=fopen('aparat/s4.txt','w');
foreach ($matt[0] as $vall) {
fwrite($file41, $vall."\n");
}
fclose($file41);
تو صفحه ای که گذاشتی کلا دوتا li هست که اونم این الگ. ر. تطبیق میدن
<li class=\"bg-item\">.*<\/li>
@code2code
آقا مهدی این عکس نگاه کن این تگ وجود دارد نمیدونم چرا زمانی که با دستور می خواهم این اطلاعات رو بیرون بکشم فقط آن دو liرو فقط نمایش میده
https://mega.nz/#!tdpixAhJ!0NtQCuvacGcz1b5Hsh8fCyXMOtFD3BGkVzhrqOx16uo
توی سایت regex101 امتحان کردم شد
حتی تست کردم ۹۷ تا پیدا کرد
https://regex101.com/r/MaW0ew/1
https://regex101.com/r/MaW0ew/2
کد php به شکل زیر باشه m یادت نره
$re = '/<li +class="bg-item item-.*" >(.|\n|\r\n)*?<\/li>/m';
$str = '';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
اینو بزن باید جواب بده
$ch = curl_init();
$url='https://www.aparat.com/search/%D8%A2%D9%85%D9%88%D8%B2%D8%B4_%D9%81%D8%A7%D8%B1%D8%B3%DB%8C_Redis';
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER=> true
]);
$output = curl_exec($ch);
curl_close($ch);
$re = "/<li +class=\"bg-item item-.*\" >[\W\w]*?<\/li>/im";
preg_match_all($re,$output,$match);
@code2code
یک سوالی داشتم در این لینک می خواهم این تگ رو پیدا کنم اما صفحه خالی نمایش میده میشه کمک کنید
$u=urldecode('https://www.aparat.com/news');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$u);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
$cc = curl_exec($ch);
curl_close($ch);
$kh="/<div style=\"display: table;float: none;\" id=\"wrapper_pagerMore_block-grid-result_bottom\" class=\"pagerMore_more_bottom pagerMore_autoload pagerMore_autoScroll clicked\">[\W\w]*?<\/div>/im";
preg_match_all($kh, $cc, $matts);
$file410=fopen('aparat/scroll.txt','w');
foreach ($matts[0] as $vall1) {
fwrite($file410, $vall1."\n");
}
fclose($file410);
/<div style=\"display: table;float: none;\" id =\"wrapper_pagerMore_block-grid-result_bottom\" class=\"pagerMore_more_bottom pagerMore_autoload pagerMore_autoScroll\" >[\W\w]*?<\/div>/im
ضمنا چرا اصرار داری هی decode کنی url رو؟
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟