Phpcurl is easy to use

Source: Internet
Author: User
Phpcurl uses PHP's cURL library to Capture webpages in a simple and effective manner. you only need to run a script and analyze the web page you crawled, then you can get the data you want as a program. Whether you want to retrieve part of the data from a link or an XML file and import it to the database, or even simply retrieve the webpage content, cURL is a powerful PHP library. php curl is easy to use.
Using the PHP cURL library, you can easily and effectively capture webpages. you only need to run a script and analyze the webpages you have crawled, then you can get the data you want as a program. CURL is a powerful PHP library whether you want to retrieve part of the data from a link or an XML file and import it to the database, even if it is simply getting webpage content. This article describes how to use this PHP library.

Enable cURL settings

First, we must first determine whether PHP has enabled this library. you can use the php_info () function to obtain this information:
Phpinfo ();
?>

If you can see the following output on the webpage, it indicates that the cURL Library has been enabled.

If you see this, you need to set your PHP and enable this library. If you are on Windows, it is very simple. you need to modify the settings of your php. ini file, find php_curl.dll, and cancel the semicolon comment, as shown below:
// Cancel the comment
Extension = php_curl.dll

If you are in Linux, you need to recompile your PHP. during editing, you need to open the compilation parameters and add the "-with-curl" parameter to the configure command.

A small example

If everything is ready, the following is a small example:
// Initialize a cURL object
$ Curl = curl_init ();
// Set the URL you want to capture
Curl_setopt ($ curl, CURLOPT_URL, 'http: // www.example.com ');
// Set the header
Curl_setopt ($ curl, CURLOPT_HEADER, 1 );
// Set the cURL parameter. The result must be saved to the string or output to the screen.
Curl_setopt ($ curl, CURLOPT_RETURNTRANSFER, 1 );
// Run cURL to request the webpage
$ Data = curl_exec ($ curl );
// Close the URL request
Curl_close ($ curl );
// Display the obtained data
Var_dump ($ data );
?>

How to POST data

The above is the code for capturing web pages, and the following is to POST data to a web page. Suppose we have a form processing URL http://www.example.com/sendsms.php, which can accept two single table domain, one is the phone number, and the other is the SMS content. The sample code is as follows:
$ PhoneNumber = '000000 ′;
$ Message = 'This message was generated by curl and php ';
$ CurlPost = 'pnumber = '. urlencode ($ phoneNumber).' & MESSAGE = '. urlencode ($ message).' & SUBMIT = send ';
$ Ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, 'http: // www.example.com/sendSMS.php ');
Curl_setopt ($ ch, CURLOPT_HEADER, 1 );
Curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1 );
Curl_setopt ($ ch, CURLOPT_POST, 1 );
Curl_setopt ($ ch, CURLOPT_POSTFIELDS, $ curlPost );
$ Data = curl_exec ();
Curl_close ($ ch );
?>

From the above procedure, we can see that using CURLOPT_POST to set the POST method of the HTTP protocol, instead of the GET method, and then setting the POST data with CURLOPT_POSTFIELDS.

About proxy servers

The following is an example of how to use the proxy server. the code is very simple and I don't need to say much about it:
$ Ch = curl_init ();
Curl_setopt ($ ch, CURLOPT_URL, 'http: // www.example.com ');
Curl_setopt ($ ch, CURLOPT_HEADER, 1 );
Curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1 );
Curl_setopt ($ ch, CURLOPT_HTTPPROXYTUNNEL, 1 );
Curl_setopt ($ ch, CURLOPT_PROXY, 'fakeproxy. com: 1080 ′);
Curl_setopt ($ ch, CURLOPT_PROXYUSERPWD, 'User: password ');
$ Data = curl_exec ();
Curl_close ($ ch );
?>

About SSL and Cookie

For SSL, that is, the HTTPS protocol, you only need to change the http: // in the CURLOPT_URL connection to https. Of course, the parameter CURLOPT_SSL_VERIFYHOST can be set as a verification site.

For Cookie, you need to understand the following three parameters:

1. CURLOPT_COOKIE: set a cookie in a face-to-face session

2. CURLOPT_COOKIEJAR: saves a Cookie when the session ends.

3. CURLOPT_COOKIEFILE: Cookie file.

HTTP server authentication

Finally, let's take a look at the HTTP server authentication:
$ Ch = curl_init ();
Curl_setopt ($ ch, CURLOPT_URL, 'http: // www.example.com ');
Curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1 );
Curl_setopt ($ ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC );
Curl_setopt (CURLOPT_USERPWD, '[username]: [password]')
$ Data = curl_exec ();
Curl_close ($ ch );
?>
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.