欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

php在線采集網(wǎng)頁(yè)數(shù)據(jù)庫(kù) php 采集

你好,你有抓取網(wǎng)頁(yè)數(shù)據(jù)到數(shù)據(jù)庫(kù)的PHP代碼么?

?php

目前成都創(chuàng)新互聯(lián)公司已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、濰坊網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

//設(shè)置連晌讓猛接

$DBserver

=

"localhost";

$DBname

=

"數(shù)據(jù)庫(kù)";

$DBuser

=

"賬號(hào)";

$DBpassword

=

"密碼";

$con

=

mysql_connect("localhost","賬號(hào)","密碼滑禪");

mysql_select_db("數(shù)據(jù)庫(kù)");

$contents

=

file_get_contents($url);

//$contents就是網(wǎng)頁(yè)內(nèi)容,$url就是鏈接

$contents

=

mysql_real_escape_string($contents);

//轉(zhuǎn)義,不用可以不宴橋要

$SQL="

INSERT

INTO

數(shù)據(jù)庫(kù)表(數(shù)據(jù)字段)

VALUES('{$contents}')";

mysql_query($SQL)

or

die(mysql_error());

?

PHP獲取網(wǎng)站中的信息并存入數(shù)據(jù)庫(kù)

用PHP自帶函數(shù)就可以實(shí)現(xiàn),首先要過(guò)去對(duì)方的網(wǎng)頁(yè)信息,用

file_get_contents();參數(shù)是對(duì)方的URL地址,這個(gè)函數(shù)返回是一個(gè)字符串你想要的東西就在這個(gè)字符串中了

接下來(lái)就可以針對(duì)這個(gè)睜亂亮字符串做處理了,說(shuō)下思路,正如你這個(gè)問(wèn)題想獲取到航班號(hào)起飛時(shí)間,在這個(gè)網(wǎng)頁(yè)中應(yīng)該有很多相同的陪拍標(biāo)簽元素,它們都有共同點(diǎn),用

用正則表達(dá)式preg_match();或者是

preg_match_all();這兩個(gè)函數(shù)它們都返回一個(gè)數(shù)組,這個(gè)數(shù)組存的就是你要的悉寬航班號(hào)和起飛時(shí)間,那么相同信息的數(shù)組就會(huì)出現(xiàn)了,然后在對(duì)這個(gè)數(shù)組進(jìn)行分析找到你要的某個(gè)值或全部的值

獲取信息要用到的3個(gè)函數(shù)是:

file_get_contents();

preg_match();

preg_match_all();

使用PHP的cURL庫(kù)進(jìn)行網(wǎng)頁(yè)抓取

使用模明仿PHP的cURL庫(kù)可以簡(jiǎn)單和有效地去抓網(wǎng)頁(yè) 你只需要運(yùn)行一個(gè)腳本 然后分析一下你所抓取的網(wǎng)頁(yè) 然后就可以以程序的方式得到你想要的數(shù)據(jù)了 無(wú)論是你想從從一個(gè)鏈接上取部分?jǐn)?shù)據(jù) 或是取一個(gè)XML文件并把其導(dǎo)入數(shù)據(jù)庫(kù) 那怕就是簡(jiǎn)單的獲取網(wǎng)頁(yè)內(nèi)容 cURL 是一個(gè)功能強(qiáng)大的PHP庫(kù) 本文主要講述如果使用這個(gè)PHP庫(kù)

啟用 cURL 設(shè)置

首先 我們得先要確定我們的PHP是否開(kāi)啟了這個(gè)庫(kù) 你可以通過(guò)使用php_info()函數(shù)來(lái)得到這一信息

﹤?phpphpinfo();?﹥

如果你可以在網(wǎng)頁(yè)上看到下面的輸出 那么表示cURL庫(kù)已被開(kāi)啟

如果你看到的話 那么你需要設(shè)置你的PHP并開(kāi)啟這個(gè)庫(kù) 如果你是在Windows平臺(tái)下 那么非常簡(jiǎn)單 你需要改一改你的php ini文件的設(shè)置 找到php_curl dll 并取消前面的分號(hào)注釋就行了 如下所示

//取消下在的注釋extension=php_curl dll

如果你旦纖是在Linux下面 那么 你需要重新編譯你的PHP了 編輯時(shí) 你需要打開(kāi)編譯參數(shù)——在configure命令上加上 –with curl 參數(shù)

一個(gè)小示例

如果一切就緒 下面是一個(gè)小例程

﹤?php// 初始化一個(gè) cURL 對(duì)象$curl = curl_init();

// 設(shè)置你需要抓取的URLcurl_setopt($curl CURLOPT_URL //cocre );

// 設(shè)置headercurl_setopt($curl CURLOPT_HEADER );

// 設(shè)置cURL 參數(shù) 要求結(jié)果保存到字符串中還是輸出到屏幕上槐鏈 curl_setopt($curl CURLOPT_RETURNTRANSFER );

// 運(yùn)行cURL 請(qǐng)求網(wǎng)頁(yè)$data = curl_exec($curl);

// 關(guān)閉URL請(qǐng)求curl_close($curl);

// 顯示獲得的數(shù)據(jù)var_dump($data);

如何POST數(shù)據(jù)

上面是抓取網(wǎng)頁(yè)的代碼 下面則是向某個(gè)網(wǎng)頁(yè)P(yáng)OST數(shù)據(jù) 假設(shè)我們有一個(gè)處理表單的網(wǎng)址// example /sendSMS php 其可以接受兩個(gè)表單域 一個(gè)是電話號(hào)碼 一個(gè)是短信內(nèi)容

﹤?php$phoneNumber = ;$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 // example /sendSMS php );curl_setopt($ch CURLOPT_HEADER );curl_setopt($ch CURLOPT_RETURNTRANSFER );curl_setopt($ch CURLOPT_POST );curl_setopt($ch CURLOPT_POSTFIELDS $curlPost);$data = curl_exec();curl_close($ch);?﹥

從上面的程序我們可以看到 使用CURLOPT_POST設(shè)置HTTP協(xié)議的POST方法 而不是GET方法 然后以CURLOPT_POSTFIELDS設(shè)置POST的數(shù)據(jù)

   關(guān)于代理服務(wù)器

下面是一個(gè)如何使用代理服務(wù)器的示例 請(qǐng)注意其中高亮的代碼 代碼很簡(jiǎn)單 我就不用多說(shuō)了

﹤?php $ch = curl_init();curl_setopt($ch CURLOPT_URL // example );curl_setopt($ch CURLOPT_HEADER );curl_setopt($ch CURLOPT_RETURNTRANSFER );curl_setopt($ch CURLOPT_HTTPPROXYTUNNEL );curl_setopt($ch CURLOPT_PROXY fakeproxy : );curl_setopt($ch CURLOPT_PROXYUSERPWD user:password );$data = curl_exec();curl_close($ch);?﹥ 關(guān)于SSL和Cookie

關(guān)于SSL也就是HTTPS協(xié)議 你只需要把CURLOPT_URL連接中的//變成//就可以了 當(dāng)然 還有一個(gè)參數(shù)叫CURLOPT_SSL_VERIFYHOST可以設(shè)置為驗(yàn)證站點(diǎn)

關(guān)于Cookie 你需要了解下面三個(gè)參數(shù)

CURLOPT_COOKIE 在當(dāng)面的會(huì)話中設(shè)置一個(gè)cookie

CURLOPT_COOKIEJAR 當(dāng)會(huì)話結(jié)束的時(shí)候保存一個(gè)Cookie

CURLOPT_COOKIEFILE Cookie的文件

HTTP服務(wù)器認(rèn)證

最后 我們來(lái)看一看HTTP服務(wù)器認(rèn)證的情況

﹤?php $ch = curl_init();curl_setopt($ch CURLOPT_URL // example );curl_setopt($ch CURLOPT_RETURNTRANSFER );curl_setopt($ch CURLOPT_HTTPAUTH CURLAUTH_BASIC);curl_setopt(CURLOPT_USERPWD [username]:[password] )

$data = curl_exec();curl_close($ch);?﹥

關(guān)于其它更多的內(nèi)容 請(qǐng)參看相關(guān)的cURL手冊(cè) lishixinzhi/Article/program/PHP/201311/21491

文章名稱:php在線采集網(wǎng)頁(yè)數(shù)據(jù)庫(kù) php 采集
地址分享:http://www.chinadenli.net/article42/ddpephc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開(kāi)發(fā)云服務(wù)器網(wǎng)站維護(hù)全網(wǎng)營(yíng)銷推廣定制開(kāi)發(fā)App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)