نمایش نتایج 1 تا 23 از 23

نام تاپیک: ویرایش جرئی یک سورس html-dom (حل شد)

  1. #1

    ویرایش جرئی یک سورس html-dom (حل شد)

    سلام خدمت دوستان گرامی من در یک پروژه دارم از simple_html_dom.php کمک میگیرم .که همانطور که میدانید کارش اینه که یک صفحه رابرای ما در یک صفحه دیگه فراخوانی میکنه. در همین باره میخواستم یک صفحه ای را فراخوانی کنم که درش لینک وجود دارد و من نمیخواهم این لینک ها در صفحه وجود داشته باشد و میخوام متن بصورت ساده بیاد. آیاامکان همچین کاری وجود دارد؟یا خیر؟ ممنون که کمک میکنید...

  2. #2

    نقل قول: ویرایش جرئی یک سورس html-dom

    از این طریق میتونید متن داخل تگ مورد نظرتونو بدون اسکریپت دریافت کنید.. یعنی همون متن خالی


    $html->find('tagName')->plaintext;

  3. #3

    نقل قول: ویرایش جرئی یک سورس html-dom

    ممنون اقا محمد
    ولی اسم تگ مورد نظر table هست که داخل tagname در کدی که دادید گذاشتم ولی جواب نداد کد خودم هم این جا گذاشتم
    $ar_table = $html->find('table');

  4. #4

    نقل قول: ویرایش جرئی یک سورس html-dom

    البته کد رو بصورت
          $ar_table = $html->find('table')->plaintext;

    هم گذاشتم ولی اون موقع دیگه هیچ چی نمایش داده نمیشه

  5. #5

    نقل قول: ویرایش جرئی یک سورس html-dom

    یک نمونه از کد HTML که دارین و چیزی که میخواین براتون تولید بشه بگذارین. شاید بدون DOM و با RegExp بشه نتیجه بهتر و با راندمان بالاتری گرفت.

  6. #6

    نقل قول: ویرایش جرئی یک سورس html-dom

    جناب MMSHFE کد php هست نه HTML
    بعد کد هم simplehtmldom هست دیگه میدونن دیگه احتمالا بچه ها
    http://simplehtmldom.sourceforge.net/

  7. #7

    نقل قول: ویرایش جرئی یک سورس html-dom

    کد اونو میدونم. میگم کد جدولی که میخواین لینکهاش حذف بشه رو بگذارین.

  8. #8

    نقل قول: ویرایش جرئی یک سورس html-dom


  9. #9

    نقل قول: ویرایش جرئی یک سورس html-dom

    این کد رو تست کنید:

    <?php
    /**
    * Get a web file (HTML, XHTML, XML, image, etc.) from a URL. Return an
    * array containing the HTTP server response header fields and content.
    */
    function get_web_page( $url )
    {
    $options = array(
    CURLOPT_RETURNTRANSFER => true, // return web page
    CURLOPT_HEADER => false, // don't return headers
    CURLOPT_FOLLOWLOCATION => true, // follow redirects
    CURLOPT_ENCODING => '', // handle all encodings
    CURLOPT_USERAGENT => 'spider', // who am i
    CURLOPT_AUTOREFERER => true, // set referer on redirect
    CURLOPT_CONNECTTIMEOUT => 120, // timeout on connect
    CURLOPT_TIMEOUT => 120, // timeout on response
    CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
    );

    $ch = curl_init( $url );
    curl_setopt_array( $ch, $options );
    $content = curl_exec( $ch );
    $err = curl_errno( $ch );
    $errmsg = curl_error( $ch );
    $header = curl_getinfo( $ch );
    curl_close( $ch );

    $header['errno'] = $err;
    $header['errmsg'] = $errmsg;
    $header['content'] = $content;
    return $header;
    }
    $data = get_web_page('http://www.beytoote.com/marketprices/phone-price/');
    $data = preg_replace('#<a.*?>(.*?)</a>#i', '$1', $data['content']);
    echo '<pre>' . htmlentities($data, ENT_QUOTES, 'utf-8') . '</pre>';
    ?>

    با این کد من همه لینکها رو حذف و به متن معمولی تبدیل کردم. حالا هرجور لازم دارین تغییرش بدین یا اینکه خروجیشو بدین به simple_html_dom تا جدولهای دلخواه رو ازش استخراج کنه براتون.

  10. #10

    نقل قول: ویرایش جرئی یک سورس html-dom

    همین کدی که دادید عینا در
    wamp و سرور خودم گذاشتم و این ارور رو دادن:

    Warning: curl_setopt_array() [function.curl-setopt-array]: CURLOPT_FOLLOWLOCATION cannot be activated when safe_mode is enabled or an open_basedir is set in /home3/gsayhgd/public_html/wp-content/themes/gld/index.php on line 37

  11. #11

    نقل قول: ویرایش جرئی یک سورس html-dom


  12. #12

    نقل قول: ویرایش جرئی یک سورس html-dom

    یا php شما در حالت safe mode اجرا شده و یا curl فعال نیست. کد مشکلی نداره. بهتره از xampp استفاده کنید.

  13. #13

    نقل قول: ویرایش جرئی یک سورس html-dom

    من توی سایت های انلاین هم تست کردم
    http://phptester.net/
    http://sandbox.onlinephpfunctions.com/
    ولی جواب ندادن
    ولی وقتی روی این سایت
    http://codepad.viper-7.com/
    تست کردم جواب داد.

    سیستم من وردپرسه چه کنم تا کار کنه؟

  14. #14

    نقل قول: ویرایش جرئی یک سورس html-dom

    کسی از دوستان اگر راه حل دیگری به ذهنش میرسه بیان کنه
    ازتون ممنونم

  15. #15

    نقل قول: ویرایش جرئی یک سورس html-dom

    up..................

  16. #16

    نقل قول: ویرایش جرئی یک سورس html-dom

    لطفاً Spam نگذارین. اگه کسی بلد باشه و تمایل داشته باشه، پست میگذاره. درمورد سیستمتون که گفتین وردپرس هست نمیدونم حقیقتش چون کدهاتون رو ندیدم ولی بهرحال باید چک کنید چه خطایی میده یا اگه صفحه خالی میاد، ببینید cURL بازه؟ بعضی وقتها توی disabled_extension یا disabled_functions رو هم باید چک کنید. بهرحال همونطور که گفتم کد تست شده و مشکلی نداره و اگه مشکلی هست، صددرصد از تنظیمات هاستتون یا اسکریپتی که ازش استفاده میکنید هست.

  17. #17

    نقل قول: ویرایش جرئی یک سورس html-dom

    درسته همانطور که گفتم کد شما مشکلی نداره
    ولی یه چیزی جناب mahmod2000 گفتم که اگه اون بشه کار خیلی بی دردسرتره
    میخواستم نظر دوستان راجب اونو بدونم

  18. #18

    نقل قول: ویرایش جرئی یک سورس html-dom

    دوست عزیز با عرض پوزش من خیلی درگیر هستم این چند وقت..
    وقت بهم اجازه بده کد را بررسی میکنم و طبق همان چیزی که گفتم براتون کد را قرار میدم

    باز هم پوزش

  19. #19

    نقل قول: ویرایش جرئی یک سورس html-dom

    نقل قول نوشته شده توسط MMSHFE مشاهده تاپیک
    این کد رو تست کنید:

    <?php
    /**
    * Get a web file (HTML, XHTML, XML, image, etc.) from a URL. Return an
    * array containing the HTTP server response header fields and content.
    */
    function get_web_page( $url )
    {
    $options = array(
    CURLOPT_RETURNTRANSFER => true, // return web page
    CURLOPT_HEADER => false, // don't return headers
    CURLOPT_FOLLOWLOCATION => true, // follow redirects
    CURLOPT_ENCODING => '', // handle all encodings
    CURLOPT_USERAGENT => 'spider', // who am i
    CURLOPT_AUTOREFERER => true, // set referer on redirect
    CURLOPT_CONNECTTIMEOUT => 120, // timeout on connect
    CURLOPT_TIMEOUT => 120, // timeout on response
    CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
    );

    $ch = curl_init( $url );
    curl_setopt_array( $ch, $options );
    $content = curl_exec( $ch );
    $err = curl_errno( $ch );
    $errmsg = curl_error( $ch );
    $header = curl_getinfo( $ch );
    curl_close( $ch );

    $header['errno'] = $err;
    $header['errmsg'] = $errmsg;
    $header['content'] = $content;
    return $header;
    }
    $data = get_web_page('http://www.beytoote.com/marketprices/phone-price/');
    $data = preg_replace('#<a.*?>(.*?)</a>#i', '$1', $data['content']);
    echo '<pre>' . htmlentities($data, ENT_QUOTES, 'utf-8') . '</pre>';
    ?>

    با این کد من همه لینکها رو حذف و به متن معمولی تبدیل کردم. حالا هرجور لازم دارین تغییرش بدین یا اینکه خروجیشو بدین به simple_html_dom تا جدولهای دلخواه رو ازش استخراج کنه براتون.


    برای پشتیبانی هاستم فرستادم جوابشون این بود:

    با سلام
    امکان استفاده از آپشن CURLOPT_FOLLOWLOCATION برای تابع curl روی سرویس میزبانی وب وجود ندارد.
    این آپشن حتی با خاموش کردن safe mode نیز قابل استفاده نخواهد بود.



    حالا من چی کارکنم واقعا گیر کردم

  20. #20

    نقل قول: ویرایش جرئی یک سورس html-dom

    خوب این CURLOPT_FOLLOWLOCATION رو حذف کنید ببینید کار میکنه کد
    احتمال زیاد باید کار کنه

    شما چه بخشی از این پیج رو میخواید بگیرید؟

  21. #21

    نقل قول: ویرایش جرئی یک سورس html-dom

    من میخوام table
    قیمت موبایل رو بگیرم

  22. #22

    نقل قول: ویرایش جرئی یک سورس html-dom


    require 'simple_html_dom.php';

    function get_web_page( $url )
    {
    $options = array(
    CURLOPT_RETURNTRANSFER => true, // return web page
    CURLOPT_HEADER => false, // don't return headers
    CURLOPT_ENCODING => '', // handle all encodings
    CURLOPT_USERAGENT => 'spider', // who am i
    CURLOPT_AUTOREFERER => true, // set referer on redirect
    CURLOPT_CONNECTTIMEOUT => 120, // timeout on connect
    CURLOPT_TIMEOUT => 120, // timeout on response
    CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
    );

    $ch = curl_init( $url );
    curl_setopt_array( $ch, $options );
    $content = curl_exec( $ch );
    $err = curl_errno( $ch );
    $errmsg = curl_error( $ch );
    $header = curl_getinfo( $ch );
    curl_close( $ch );

    $header['errno'] = $err;
    $header['errmsg'] = $errmsg;
    $header['content'] = $content;
    return $header;
    }
    $data = get_web_page('http://www.beytoote.com/marketprices/phone-price/');

    $html = str_get_html($data['content']);

    foreach($html->find('div.pricetab') as $price)
    {
    $price = preg_replace('#<a.*?>(.*?)</a>#i', '$1', $price);
    echo $price;
    }



    فایل simple_html_dom.php مسیرش رو درست کنید موقع استفاده کردن
    با کمک کد جناب شهرکی اطلاعات جدول رو میگیریم و لینکی اگه باشه حذف میشه

    بعد میتونی بهش استایل بدی، همونجور که میخواید نمایش بدید

    ببینید کار میکنه یا نه

  23. #23

    نقل قول: ویرایش جرئی یک سورس html-dom

    جناب محمد اقا واقعا از شما تشکر میکنم
    واقعا یک بار بزرگی را از روی دوش بنده برداشتید
    و همچنین از شما جناب شهرکی


    (واقعا نمیشود از دکمه تشکر استفاده کرد)

تاپیک های مشابه

  1. سوال: بدست آوردن سورس html
    نوشته شده توسط amirjalili در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: شنبه 05 مرداد 1387, 09:53 صبح
  2. ویرایش منو در sothink html menu
    نوشته شده توسط maryam_jamshid در بخش ASP.NET Web Forms
    پاسخ: 5
    آخرین پست: شنبه 17 فروردین 1387, 10:35 صبح
  3. مشکل در برگرداندن سورس html صفحه مورد نظر
    نوشته شده توسط ehsan2007 در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: سه شنبه 04 دی 1386, 21:48 عصر
  4. خواند سورس html از یک url
    نوشته شده توسط shervinrv در بخش VB.NET
    پاسخ: 4
    آخرین پست: پنج شنبه 01 آذر 1386, 07:09 صبح
  5. ذخیره سورس HTML در دیتابیس
    نوشته شده توسط JikSearch در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: سه شنبه 23 اسفند 1384, 11:07 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •