php 开启fsockopen函数,巧用php的fsockopen函数
這幾天閑著沒事,用PHP的fsockopen寫了幾個文件為我的酷我音樂盒的帳戶加分。
獲得途徑 積分
音樂盒
完整的聽一首歌曲 1(每天最高200)
音樂坊
成功上傳一張歌單 50(每天最高200)
酷我音樂空間
空間被訪問1次 1(每天最高50)
有人打招呼1次 2(每天最高50)
有人留言(非主人) 5(每天最高50)
其他來源
注冊 500
填寫郵箱信息 100(只限一次)
想增加分數的途徑有上面幾個,聽200首音樂每天可以實現,一天到晚都開著酷我音樂盒。
然后就是訪問我的空間、打招呼、留言、上傳歌單,要是能寫個程序每天自動跑,不用每天自己去點擊,那多好。
于是就開始分析,用我的音樂空間做例子:[url]http://jackywdx.kzone.koowo.com/mlog/index.htm&m=y[/url]
這是我的音樂空間地址,我注冊了一個馬甲然后去訪問我的空間,每刷新一次訪問量就加1,要分析網絡交互還得借助一些工具,比如httpwatch,火狐下面有httpfox,都可以用來監測網絡數據的。我用的是HTTPWATCH,在IE下,開啟HTTPWATCH的監測功能,打開上面的鏈接地址,回車后就有數據出來,如下圖:
認真分析一下可以知道是這個地址:[url]http://jackywdx.kzone.koowo.com/mlog/st/SendView[/url]在觸發更新。
發送的HTTP頭信息可以直接從HTTPWATCH下面的stream標簽下面的內容獲取到,直接全部復制出來就行。
寫了下面的一份代碼:
然后保存成一個文件koowo_view.php,在瀏覽器里面執行一下:http://localhost/koowo_view.php,然后去我的首頁看看,訪問量增加了1,覺得不明顯可以多刷新幾遍再去看看。哈哈,成功,于是繼續分析打招呼、留言、上傳歌單的入口地址,然后再寫上相應的程序koowo_doPoke.php,koowo_leave_message.php,koowo_upload_song.php,這樣4個程序都寫完了,經過測試成功,還要讓這4個程序定時的執行,由于增加的分數都有上限,比如訪問量最多可以增加50分,那我就讓他跑50次,留言最多可以增加50分,每次留言可以增加5分那就跑10次。最后寫個腳本來處理這些邏輯,寫腳本我選擇了用shell,其實用PHP也可以寫,只是順便鍛煉一下寫shell的能力。。
#!/bin/bash
#執行瀏覽頁面
function do_view_koowo(){
#view_num.txt用來存儲執行的次數,
view_num=$(cat /opt/koowo/view_num.txt);
#循環執行50遍
while [ $view_num -le 50 ]
do
/opt/lampp/bin/php /opt/koowo/php/koowo_view.php >/dev/null 2>&1
#echo “done n” >> koowo_log
let view_num=$view_num+1;
echo $view_num > /opt/koowo/recordFile/view_num.txt
#暫停2秒,也不能跑得太快。
sleep 2
done
#執行完之后再把瀏覽次數置為1供下次使用
if [ $view_num -ge 50 ]
then
echo 1 > /opt/koowo/recordFile/view_num.txt
fi
}
#執行打招呼功能
function do_poke(){
poke_num=$(cat /opt/koowo/recordFile/poke_num.txt)
while [ $poke_num -le 26 ]
do
sleep 20
/opt/lampp/bin/php /opt/koowo/php/koowo_doPoke.php >/dev/null 2>&1
let poke_num=$poke_num+1
echo $poke_num > /opt/koowo/recordFile/poke_num.txt
echo “sleeping…”
done
if [ $poke_num -gt 25 ]
then
echo 1 > /opt/koowo/recordFile/poke_num.txt
fi
}
#執行留言功能
function do_leave_message(){
message_num=$(cat /opt/koowo/recordFile/message_num.txt)
while [ $message_num -le 11 ]
do
/opt/lampp/bin/php /opt/koowo/php/koowo_leave_message.php >/dev/null 2>&1
let message_num=$message_num+1
echo $message_num > /opt/koowo/recordFile/message_num.txt
sleep 30
echo “sleep…”
done
if [ $message_num -gt 10 ]
then
echo 1 > /opt/koowo/recordFile/message_num.txt
fi
}
#執行上傳歌單功能
function do_upload_song(){
upload_num=$(cat /opt/koowo/recordFile/upload_num.txt)
while [ $upload_num -le 4 ]
do
/opt/lampp/bin/php /opt/koowo/php/koowo_upload.php >/dev/null 2>&1
let upload_num=$upload_num+1
echo $upload_num > /opt/koowo/recordFile/upload_num.txt
sleep 30
done
if [ $upload_num -gt 3 ]
then
echo 1 > /opt/koowo/recordFile/upload_num.txt
fi
}
#執行上面四個函數
do_view_koowo
do_poke
do_leave_message
do_upload_song
exit 1
上面寫了一個腳本,名字叫做run_cron.sh,怎么讓他每天執行呢,哈哈,用cron程序。。。
crontab -e進入編輯頁面
01 10 * * * /bin/bash /opt/koowo/run_cron.sh 2>&1 > /dev/null
寫上這么一句,退出。那就會在每天早上的10點1分去執行這個腳本了。。
如果想知道這個程序跑了沒有,那就去查一下那個log文件就行了。
原文:[url]http://jackywdx.cn/2008/12/%E5%B7%A7%E7%94%A8php%E7%9A%84fsockopen%E5%87%BD%E6%95%B0/#comment-55[/url]
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的php 开启fsockopen函数,巧用php的fsockopen函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微博CEO质问顺丰是不是骗钱的:包裹千元
- 下一篇: 动态规划算法php,php算法学习之动态