رفتن به مطلب
انجمن تخصصی پرسش و پاسخ

gorgoshir

کاربر عضو
  • تعداد ارسال ها

    2
  • تاریخ عضویت

  • آخرین بازدید

اعتبار در سایت

1 Neutral
  1. سلام قسمت دوم سوال رو میشه کمکم کنید من چندتا کد ساختم با این کدی که دادم بهتون ولی همشون گیر میکنن مثلا یکیشون کلا دیگه احرا کد تموم نمیشه توی چندتاشون حطای میزنه که تایتل وجود نداره و ... وجود نداره متغیرش رو نداری مثلا کد: <?php $url=$_GET["url"]; function getta($url) { // Extract HTML using curl $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); $data = curl_exec($ch); curl_close($ch); // Load HTML to DOM Object $dom = new DOMDocument(); @$dom->loadHTML($data); // Parse DOM to get Title $nodes = $dom->getElementsByTagName('title'); $title = $nodes->item(0)->nodeValue; // Parse DOM to get Meta Description $metas = $dom->getElementsByTagName('meta'); $body = ""; for ($i = 0; $i < $metas->length; $i ++) { $meta = $metas->item($i); if ($meta->getAttribute('name') == 'description') { $body = $meta->getAttribute('content'); } } /// keword // $metas = $dom->getElementsByTagName('meta'); // $kew = ""; // for ($i = 0; $i < $metas->length; $i ++) { $kewta = $metas->item($i); if ($kewta->getAttribute('name') == 'keywords') { $kew = $kewta->getAttribute('content'); } // } /////////// // $metas = $dom->getElementsByTagName('meta'); // $smap = ""; // for ($i = 0; $i < $metas->length; $i ++) { $mapta = $metas->item($i); if ($mapta->getAttribute('name') == 'sitemap') { $smap = $mapta->getAttribute('content'); } // } /////////// // $metas = $dom->getElementsByTagName('meta'); // $ico = ""; // for ($i = 0; $i < $metas->length; $i ++) { $icta = $metas->item($i); if ($icta->getAttribute('name') == 'favicon') { $ico = $icta->getAttribute('content'); } // } /////////// /////////// /// keword //// sitemap //// sitemap // Parse DOM to get Images $image_urls = array(); $images = $dom->getElementsByTagName('img'); for ($i = 0; $i < $images->length; $i ++) { $image = $images->item($i); $src = $image->getAttribute('src'); if(filter_var($src, FILTER_VALIDATE_URL)) { $image_urls = $src; // echo $src; } } //// link exetra $xpath = new DOMXPath($dom); $link_urls = array(); $hrefs = $xpath->evaluate("/html/body//a"); //echo $hrefs; for ($i = 0; $i < $hrefs->length; $i ++) { $href = $hrefs->item($i); $url = $href->getAttribute('href'); $url = filter_var($url, FILTER_SANITIZE_URL); // validate url if(!filter_var($url, FILTER_VALIDATE_URL) === false){ $link=$url; echo $link; } } //// link extra $output = array( 'title' => $title, 'src' => $src, 'body' => $body, 'kew' => $kew, 'link' => $url, 'ico' => $ico, 'smap' => $smap ); return $output; } echo "<pre>"; print_r(getta($url)); echo "<hr>"; echo $title; echo "<hr>"; echo $link; echo "<hr>"; echo $src; echo "<hr>"; //$tit=($output[title]); // echo json_encode($output); echo "<pre>"; echo "<br>"; echo $title; echo "<br>"; echo $link; echo "<hr>"; echo "<hr>"; echo $url; print_r($src); echo "<hr>"; echo "<hr>"; echo $src; echo "<br>"; echo $body; echo "<br>"; خطا میده میگه Fatal error: Call to a member function getAttribute() on a non-object in D:\0000000111\htdocs\cod\cod\00\get2.php on line 38لط لطفا کمک کنید مشکل رو حل کنم واقعا بدجور درسر ساز شده برام سوال توی اون فروم بود اینه من بخوام به کد شما این چندتا امکان رو هم اضافه کنم قسمت اسکرایپ کردن سایت کد چجوری میشه مثلا میخوام کد اینجوری بشه اگه کد اول این باشه <?php $dom = new DOMDocument(); @$dom->loadHTML($urls); $xpath = new DOMXPath($dom); $hrefs = $xpath->evaluate("/html/body//a"); for($i = '0' ; $i < $hrefs->length; $i++){ $href = $hrefs->item($i); $url = $href->getAttribute('href'); $url = filter_var($url, FILTER_SANITIZE_URL); // validate url if(!filter_var($url, FILTER_VALIDATE_URL) === false){ echo '<a href="'.$url.'">'.$url.'</a><br />'; }} کد دوم این میشه <?php // Target URL // Dont Edit This $dom = new DOMDocument(); @$dom->loadHTML(file_get_contents($target_url)); $xpath = new DOMXPath($dom); $hrefs = $xpath->evaluate("/html/body//a"); $source = 0; $errors = 0; $duplicate = 0; $report = array(); for($i = 0; $i < $hrefs->length; $i++) { $href = $hrefs->item($i); $title = $href->nodeValue; $url = $href->getAttribute('href'); $url = filter_var($url, FILTER_SANITIZE_URL); $key = md5($url); // Validate URL if(!filter_var($url, FILTER_VALIDATE_URL) === false) { } اگه کد تازه ما اینم باشه: // Load HTML to DOM Object $dom = new DOMDocument(); @$dom->loadHTML($data); // Parse DOM to get Title $nodes = $dom->getElementsByTagName('title'); @$title = $nodes->item(0)->nodeValue; $tit = $title; // Parse DOM to get Meta Description $metas = $dom->getElementsByTagName('meta'); $body = ""; for ($i = 0; $i < $metas->length; $i ++) { $meta = $metas->item($i); if ($meta->getAttribute('name') == 'description') { $body = $meta->getAttribute('content'); $meta9 = $metas->item($i); if ($meta9->getAttribute('name') == 'keywords') { $body9 = $meta2->getAttribute('content'); $kew1 = $body9; echo $kew1; echo "<hr>"; } } } // Parse DOM to get Meta keywords $metas2 = $dom->getElementsByTagName('meta'); $body2 = ""; for ($i = 0; $i < $metas->length; $i ++) { $meta2 = $metas2->item($i); if ($meta2->getAttribute('name') == 'keywords') { $body2 = $meta2->getAttribute('content'); $kew = $body2; } } // Parse DOM to get Meta sitemap $metas3 = $dom->getElementsByTagName('meta'); $body3 = ""; for ($i = 0; $i < $metas->length; $i ++) { $meta3 = $metas3->item($i); if ($meta3->getAttribute('name') == 'sitemap') { $body3 = $meta3->getAttribute('content'); $map = $body3; } } // Parse DOM to get Meta favicon $metas4 = $dom->getElementsByTagName('meta'); $body4 = ""; for ($i = 0; $i < $metas->length; $i ++) { $meta4 = $metas4->item($i); if ($meta4->getAttribute('name') == 'favicon') { $body4 = $meta4->getAttribute('content'); $icon = $body4; } } // Parse DOM to get Images $image_urls = array(); $images = $dom->getElementsByTagName('img'); for ($i = 0; $i < $images->length; $i ++) { $image = $images->item($i); $src = $image->getAttribute('src'); } // Images 2 $image_urls = array(); $images = $dom->getElementsByTagName('img'); $imgg = ""; for ($i = 0; $i < $images->length; $i ++) { $image = $images->item($i); if ($src = $image->getAttribute('src')){ $imgg = $image->getAttribute('src'); } } // end Images 2 $date = date("r"); @$out1 = $title; @$out2 = $body; @$out3 = $kew; @$out4 = $body3; @$out5 = $body4; @$out6 = $src; @$out7 = $imgg; کد جدید چی میشه؟ منظورم این هست که به قسمت دام ایکس ام ال کد اول چه چیزایی باید اضافه کنم برای اینکه بهش تایتل و دیسکریپشن و ایمج و آیکون و برچسب پست بزارم بابات کمکتون بازم ممنونم دستتون درد نکنه دعای خیلی ها پشتتونه
×
×
  • جدید...