"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > \"पेज मूव्ड\" त्रुटियों के बावजूद कर्ल का उपयोग करके पेज सामग्री कैसे प्राप्त करें?

\"पेज मूव्ड\" त्रुटियों के बावजूद कर्ल का उपयोग करके पेज सामग्री कैसे प्राप्त करें?

2024-11-09 को प्रकाशित
ब्राउज़ करें:627

How to Retrieve Page Content Using cURL Despite \

curl का उपयोग करके पृष्ठ सामग्री पुनर्प्राप्त करना

इस संदर्भ में, आप cURL का उपयोग करके Google खोज परिणाम पृष्ठ की सामग्री को स्क्रैप करना चाहते हैं। उपयोगकर्ता एजेंटों और विभिन्न विकल्पों को सेट करने का प्रयास करने के बावजूद, पृष्ठ सामग्री की सफल पुनर्प्राप्ति आपसे दूर रही है। रीडायरेक्ट या "पेज मूव्ड" त्रुटियां आपके प्रयासों को प्रभावित कर रही हैं।

ऐसा माना जाता है कि समस्या क्वेरी स्ट्रिंग में विशेष वर्णों के एन्कोडिंग से उत्पन्न हो सकती है। इसे कम करने के लिए, आपके PHP कोड में बदलाव आवश्यक हैं।

यहां तरीका है:

function get_web_page($url)
{
    $user_agent = 'Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20100101 Firefox/8.0';

    $options = array(
        CURLOPT_CUSTOMREQUEST => "GET",
        CURLOPT_POST           => false,
        CURLOPT_USERAGENT      => $user_agent,
        CURLOPT_COOKIEFILE     => "cookie.txt",
        CURLOPT_COOKIEJAR      => "cookie.txt",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HEADER         => false,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_ENCODING       => "",
        CURLOPT_AUTOREFERER    => true,
        CURLOPT_CONNECTTIMEOUT => 120,
        CURLOPT_TIMEOUT        => 120,
        CURLOPT_MAXREDIRS      => 10
    );

    $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;
}

उपयोग:

$result = get_web_page($url);

if ($result['errno'] != 0) {
    // Handle errors: bad URL, timeout, redirect loop
}

if ($result['http_code'] != 200) {
    // Handle errors: no page, no permissions, no service
}

$page = $result['content'];

इस कोड के साथ, अब आप अपने ब्राउज़र में प्रदर्शित सटीक पृष्ठ सामग्री को पुनः प्राप्त कर सकते हैं। क्वेरी स्ट्रिंग में विशेष वर्णों को ध्यान में रखकर, आप उन बाधाओं को दूर कर सकते हैं जिनका आपने पहले सामना किया था।

विज्ञप्ति वक्तव्य यह लेख यहां पुनर्मुद्रित है: 1729596678 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3