Use PHP’s cURL library to crawl web pages simply and effectively. You only need to run a script and analyze the web pages you crawled, and then you can get the data you want programmatically
Whether you want to retrieve partial data from a link, take an XML file and import it into a database, or even simply retrieve the content of a web page, cURL is a powerful PHP library. CURL function library (Client URL Library Function) in PHP curl_close — close a curl session curl_copy_handle — Copy all contents and parameters of a curl connection resource curl_errno — Returns a numeric number containing error information for the current session curl_error — Returns a string containing error information for the current session curl_exec — execute a curl session curl_getinfo — Get information about a curl connection resource handle curl_init — Initialize a curl session curl_multi_add_handle — Add individual curl handle resources to a curl batch session curl_multi_close — Close a batch handle resource curl_multi_exec — parse a curl batch handle curl_multi_getcontent — Returns a text stream of fetched output curl_multi_info_read — Get the relevant transmission information of the currently parsed curl curl_multi_init — Initialize a curl batch handle resource curl_multi_remove_handle — Remove a handle resource in the curl batch handle resource curl_multi_select — Get all the sockets associated with the cURL extension, which can then be "selected" curl_setopt_array — Set session parameters for a curl as an array curl_setopt — Set session parameters for a curl curl_version — Get curl-related version information The function of the curl_init() function initializes a curl session. The only parameter of the curl_init() function is optional and represents a URL address. The curl_exec() function is used to execute a curl session, and the only parameter is the handle returned by the curl_init() function. The curl_close() function is used to close a curl session. The only parameter is the handle returned by the curl_init() function. Example 1: Basic example basic example The code is as follows: Example 2: POST data sendSMS.php, which can accept two form fields, one is the phone number and the other is the text message content.POST数据 代码如下: 例子三:使用代理服务器 使用代理服务器 代码如下: 例子四: 模拟登录 Curl 模拟登录 discuz 程序,适合DZ7.0,将username改成你的用户名,userpass改成你的密码就可以了. Curl 模拟登录 discuz 程序 复制代码 代码如下: /i', $contents, $matches); if(!empty($matches)) { $formhash = $matches[1]; } else { die('Not found the forumhash.'); } //POST数据,获取COOKIE $cookie_file = dirname(__FILE__) . '/cookie.txt'; //$cookie_file = tempnam('/tmp'); $ch = curl_init($login_url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file); curl_exec($ch); curl_close($ch); //带着上面得到的COOKIE获取需要登录后才能查看的页面内容 $ch = curl_init($get_url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); $contents = curl_exec($ch); curl_close($ch); var_dump($contents);