本文目錄一覽:
- 1、PHP 定時獲取網頁內容放到某變數中並顯示出來
- 2、phpcms網站建設中採集的方法,怎麼樣做採集
- 3、PHP實現定時任務的幾種方式
- 4、php高手,dedecms(織夢)系統怎麼弄才能做到(定時自動採集)求指導……謝謝……
- 5、php採集大數據的方案
PHP 定時獲取網頁內容放到某變數中並顯示出來
那你可以用jquery的ajax方法, 然後php負責讀取的內容, 然後返回結果, 或者獲取到此內容之後, 通過js來進行字元串分析, 用js做分析的例子是
index.php內容為
?php
$str = file_get_contents(“”);
echo $str;
?
script
setInterval(function() {
$.getScript(“index.php”, function(){
var str = hq_str_hf_XAG;
var array = str.split(“,”);
var t = array[0];
$(“#abc”).val(t)
});
}, 1000 * 60);
/script
div id=”abc”/div
phpcms網站建設中採集的方法,怎麼樣做採集
工具/原料
PHPCMS
文章採集器
方法/步驟
1、首先我們需要下載並安裝GBK格式的PHPCMS系統。
2、下載PHPCMS和文章採集器的介面文件
3、將jiekou.php文件複製到網站的根目錄下,並用記事本打開該文件,修改「密碼驗證」欄目password處的密碼
4、啟動文章採集器,先點擊【第三步發布內容設置】中的”web發布管理配置”
5、在彈出的【web發布配置管理】窗口中單擊右側的【更多】按鈕,導入「phpcms9.wpm」配置模塊,並選擇該模塊
6、設置【web發布配置管理】中的編碼設置、登錄操作、獲取分類欄目等選項
7、單擊【測試】按鈕,在彈出的【發布配置測試】對話框中設置標籤和內容的值,此項為必須設置,否則發布測試文章會失敗。至此PHPCMS已經與文章採集器連接成功。
PHP實現定時任務的幾種方式
一. 簡單
?php
ignore_user_abort();//關掉瀏覽器,PHP腳本也可以繼續執行.
set_time_limit(0);// 通過set_time_limit(0)可以讓程序無限制的執行下去
ini_set(‘memory_limit’,’512M’); // 設置內存限制
$interval=60*30;// 每隔半小時運行
do{
//ToDo
sleep($interval);// 等待5分鐘
}
while(true);
二. 簡單 可控型
config.php
?php
return 1;
?
cron.php
ignore_user_abort();//關掉瀏覽器,PHP腳本也可以繼續執行.
set_time_limit(0);// 通過set_time_limit(0)可以讓程序無限制的執行下去
$interval=60*30;// 每隔半小時運行
do{
$run = include ‘config.php’;
if(!$run) die(‘process abort’);
//ToDo
sleep($interval);// 等待5分鐘
}
while(true);
三. 簡單 改進型
?php
$time=15;
$url=”http://”.$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];
/*
function
*/
sleep($time);
file_get_contents($url);
?
php高手,dedecms(織夢)系統怎麼弄才能做到(定時自動採集)求指導……謝謝……
這個系統是PHP寫的,雖然PHP可以寫計劃任務的程序,但是他需要有人訪問站點進行觸發執行,否則他自己不會執行。
php採集大數據的方案
1、建議你讀寫數據和下載圖片分開,各用不同的進程完成。
比如說,取數據用get-data.php,下載圖片用get-image.php。
2、多進程的話,php可以簡單的用pcntl_fork()。這樣可以並發多個子進程。
但是我不建議你用fork,我建議你安裝一個gearman worker。這樣你要並發幾個,就啟幾個worker,寫代碼簡單,根本不用在代碼里考慮thread啊,process等等。
3、綜上,解決方案這樣:
(1)安裝gearman worker。
(2)寫一個get-data.php,在crontab里設置它每5分鐘執行一次,只負責讀數據,然後把讀回來的數據一條一條的扔到 gearman worker的隊列里;
然後再寫一個處理數據的腳本作為worker,例如叫process-data.php,這個腳本常駐內存。它作為worker從geraman 隊列里讀出一條一條的數據,然後跟你的資料庫老數據比較,進行你的業務邏輯。如果你要10個並發,那就啟動10個process-data.php好了。處理完後,如果圖片地址有變動需要下載圖片,就把圖片地址扔到 gearman worker的另一個隊列里。
(3)再寫一個download-data.php,作為下載圖片的worker,同樣,你啟動10個20個並發隨便你。這個進程也常駐內存運行,從gearman worker的圖片數據隊列里取數據出來,下載圖片
4、常駐進程的話,就是在代碼里寫個while(true)死循環,讓它一直運行好了。如果怕內存泄露啥的,你可以每循環10萬次退出一下。然後在crontab里設置,每分鐘檢查一下進程有沒有啟動,比如說這樣啟動3個process-data worker進程:
* * * * * flock -xn /tmp/process-data.1.lock -c ‘/usr/bin/php /process-data.php /dev/null 21’
* * * * * flock -xn /tmp/process-data.2.lock -c ‘/usr/bin/php /process-data.php /dev/null 21’
* * * * * flock -xn /tmp/process-data.3.lock -c ‘/usr/bin/php /process-data.php /dev/null 21’
不知道你明白了沒有
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/286971.html