php抓取搜索
Ⅰ php站內搜索怎麼做
進入php源程序目錄中的ext目錄中,這里存放著各個擴展模塊的源代碼,選擇你需要的模塊,比如curl模塊:cd curl執行phpize生成編譯文件!
phpize在PHP安裝目錄的bin目錄/usr/local/php5/bin/phpize運行時,
可能會報錯:Cannot find autoconf. Please check your autoconf installation andthe $PHP_AUTOCONFenvironment variable is set correctly and then rerun thisscript.,需要安裝autoconf:yum install autoconf(RedHat或者CentOS)、apt-get installautoconf(Ubuntu Linux)!
執行/usr/local/php5/bin/php -v這個命令時,php會去檢查配置文件是否正確,
如果有配置錯誤,這里會報錯,可以根據錯誤信息去排查!
Ⅱ PHP實現搜索查詢功能的方法技巧
下面是首頁顯示數據表package中的內容,但是有個條件,顯示在首頁的內容還必須是 :欄位status=0,且printing=0的數據才能在首頁列表中顯示出來。
頁面上有一個“搜索”功能,輸入條件後就會根據條件來進行查詢。
一般的搜索的話,只要在首頁顯示列表方法index()中給一個:
?
$map=array();//初始化查詢條件
$map=$this->_search();//調用查詢方法
$total = $this->Model->where ($map)->count(); //這個主要是用來計算頁面顯示數據條數的
if ($total == 0) {
$_list = '';
} else {
$_list = $this->Model->where ($map)->limit( $post_data ['first'] . ',' . $post_data ['rows'] )->select();
}
然後,就是寫一個_search():
protected function _search(){
$map = array ();
$post_data = I ( 'post.' );
if ($post_data ['packageid'] != '') {
$map ['packageid'] = array (
'like',
'%' . $post_data ['packageid'] . '%'
);
}
return $map;
}
最後,在設置的“搜索”菜單中,調用這個搜索方法。
但是,這個搜索的.同時,還要確保在欄位status=0,且printing=0的數據中進行搜索。
這個限制條件該加在什麼地方。各種嘗試和查詢後,才知道。限制條件直接加在SQL語句中就行了(如下紅色的地方)。(我自己試的時候一直在如下藍色的地方加條件,屢試屢敗!)
$map=array();
$map=$this->_search();
$total = $this->Model->where ($map)->where(array('status' =>0,'print_status'=>0))->count();
if ($total == 0) {
$_list = '';
} else {
$_list = $this->Model->where ($map)->where(array('status' =>0,'print_status'=>0))->limit( $post_data ['first'] . ',' . $post_data ['rows'] )->select();
}
更多相關文章推薦:
Ⅲ php中如何使用sphinx搜索引擎
一. 安裝、配置
1.ubuntu安裝sphinx
如果沒有安裝aptitude ,需要先安裝 aptitude
2.配置
3.執行命令分詞,會在/var/lib/sphinxsearch/data/test1 目錄下生成一堆索引文件
sudo indexer -c /etc/sphinxsearch/sphinx.conf test1
test1為上述配置文件的index名字
4.命令行測試搜索
sudo search -c /etc/sphinxsearch/sphinx.conf google
二.在php中使用,安裝php、sphinx的依賴庫
安裝 aptitudeapt-get install aptitude
sudo aptitude install libsphinxclient-dev libsphinxclient-0.0.1 -y
2.安裝php sphinx的擴展
安裝 pecl
sudo apt-get install php-pear php5-dev
在安裝sphinx
sudo pecl install sphinx
3.在配置文件php.ini中添加sphinx的擴展,
我的php.ini文件為
sudo vim /etc/php5/fpm/php.ini
獲取自己的php.ini文件位置使用
php5-fpm -i|grep ini
添加:
extension=sphinx.so
4.重啟php5-fpm,查看php是否載入sphinx模塊
sudo /etc/init.d/php5-fpm restart
5.將search程序運行在後台
sudo searchd -c /etc/sphinxsearch/sphinx.conf
默認監聽配置文件中的埠:9312
6.在thinkphp中調用搜索
搜索完畢,返回結果(默認返回20條,修改返回條數用添加$s->SetLimits(0, 1000, 1000);),搜索速度相當快,索引80w條數據的title和description兩個欄位耗時不到10s,該搜索引擎支持增量索引,多種模式的搜索,網上的資料也非常多
Ⅳ 如何用PHP抓取此鏈接的動態視頻地址
看你是什麼視頻,
如果是一些視頻網站像優酷土豆之類的,把滑鼠放到正在播放的視頻上,就會在右邊滑出分享菜單,根據你的需求復制相應格式的視頻地址代碼就行。
如果是一些小網站上自己上傳在主機空間的小視頻,你可以用IE打開,在確定你的電腦中裝了迅雷的情況下,把滑鼠放到視頻上,就會有迅雷的下載提示,點擊下載,然後在確認對話框中,你會看到一個視頻的地址,復制它就可以。
另外一個辦法就是在頁面空白的地址點擊右鍵,查看頁面源代碼,然後在代碼中找到<embed>這一對標簽,然後這對標簽里的src="",在src後面的一對引號是的地址就是視頻地址,你可以復制到瀏覽器來打開試試。