免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

php抓取網(wǎng)頁寫數(shù)據(jù)庫 php獲取網(wǎng)頁源代碼

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

?php

創(chuàng)新互聯(lián)是專業(yè)的安平網(wǎng)站建設(shè)公司,安平接單;提供網(wǎng)站設(shè)計、成都做網(wǎng)站,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行安平網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

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

$DBserver

=

"localhost";

$DBname

=

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

$DBuser

=

"賬號";

$DBpassword

=

"密碼";

$con

=

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

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

$contents

=

file_get_contents($url);

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

$contents

=

mysql_real_escape_string($contents);

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

$SQL="

INSERT

INTO

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

VALUES('{$contents}')";

mysql_query($SQL)

or

die(mysql_error());

?

怎么用php把html表單內(nèi)容寫入數(shù)據(jù)庫

1:首先要使用PHP的超全局變量 $_GET 和 $_POST 用于收集表單數(shù)據(jù)(form-data)

2:然后使用INSERT INTO 語句用于向數(shù)據(jù)庫表中插入新記錄。

具體示例:

(1)首先創(chuàng)建了一個名為 "Persons" 的表,有三個列:"Firstname", "Lastname" 以及 "Age"。

?php

$con?=?mysql_connect("localhost","peter","abc123");

if?(!$con)

{

die('Could?not?connect:?'?.?mysql_error());

}

mysql_select_db("my_db",?$con);

mysql_query("INSERT?INTO?Persons?(FirstName,?LastName,?Age)?

VALUES?('Peter',?'Griffin',?'35')");

mysql_query("INSERT?INTO?Persons?(FirstName,?LastName,?Age)?

VALUES?('Glenn',?'Quagmire',?'33')");

mysql_close($con);

?

(2)其次創(chuàng)建一個 HTML 表單,這個表單可把新記錄插入此笑 "Persons" 表。

html

body

form?action="insert.php"?method="post"

Firstname:?input?type="text"?name="firstname"森敏含?/

Lastname:?input?type="text"?name="lastname"?/

Age:?input?type="text"?name="age"?/

input?type="submit"?/

/form

/body

/html

(3)接著當(dāng)用戶點(diǎn)擊上例中 HTML 表單中的提交按鈕時,表單數(shù)據(jù)被發(fā)送到 "insert.php"。"insert.php" 文件連接數(shù)據(jù)庫,并通過

$_POST 變量從表單取回值。然后,mysql_query() 函數(shù)執(zhí)行 INSERT INTO 語句,一條新的記錄會添加到數(shù)據(jù)庫表中。

?php

$con?=?mysql_connect("localhost","peter","abc123"拿液);

if?(!$con)

{

die('Could?not?connect:?'?.?mysql_error());

}

mysql_select_db("my_db",?$con);

$sql="INSERT?INTO?Persons?(FirstName,?LastName,?Age)

VALUES

('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";

if?(!mysql_query($sql,$con))

{

die('Error:?'?.?mysql_error());

}

echo?"1?record?added";

mysql_close($con)

?

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

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

啟用 cURL 設(shè)置

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

﹤?phpphpinfo();?﹥

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

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

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

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

一個小示例

如果一切就緒 下面是一個小例程

﹤?php// 初始化一個 cURL 對象$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 請求網(wǎng)頁$data = curl_exec($curl);

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

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

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

上面是抓取網(wǎng)頁的代碼 下面則是向某個網(wǎng)頁P(yáng)OST數(shù)據(jù) 假設(shè)我們有一個處理表單的網(wǎng)址// example /sendSMS php 其可以接受兩個表單域 一個是電話號碼 一個是短信內(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ù)器

下面是一個如何使用代理服務(wù)器的示例 請注意其中高亮的代碼 代碼很簡單 我就不用多說了

﹤?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)然 還有一個參數(shù)叫CURLOPT_SSL_VERIFYHOST可以設(shè)置為驗(yàn)證站點(diǎn)

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

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

CURLOPT_COOKIEJAR 當(dāng)會話結(jié)束的時候保存一個Cookie

CURLOPT_COOKIEFILE Cookie的文件

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

最后 我們來看一看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)容 請參看相關(guān)的cURL手冊 lishixinzhi/Article/program/PHP/201311/21491

文章標(biāo)題:php抓取網(wǎng)頁寫數(shù)據(jù)庫 php獲取網(wǎng)頁源代碼
轉(zhuǎn)載來于:http://m.newbst.com/article40/ddpgeeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供GoogleApp設(shè)計響應(yīng)式網(wǎng)站標(biāo)簽優(yōu)化網(wǎng)站制作動態(tài)網(wǎng)站

廣告

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

成都seo排名網(wǎng)站優(yōu)化