codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
<?php require_once 'simple_html_dom.php';//ライブラリを読みこませるために一行追加 $url = "http://open2ch.net/dev/toukei.cgi?m=thread&d=2015-10-10&bbs=news4vip&sort=time"; //タイムオーバー防ぐ set_time_limit(0); //UAを設定 $options = array( 'http' => array( 'method' => 'GET', 'header' => 'User-Agent: test)',), ); //統計君取得 $context = stream_context_create($options); $contents = file_get_contents($url, false, $context); $html = str_get_html($contents);//html_domのライブラリで読み込める形にして取得 $ret = $html->find( 'div' )[ 9 ]->find('a');//10番目にあるdiv内のアンカー要素を全部取得 foreach ($ret as $element) {//連想配列的な物に全部リンクが入ってるので //print($element->href."<br>");//href要素だけ全部取得して表示させる //print($element->plaintext."<br><br>");//アンカーのテキストも表示 $url_li = preg_replace('/[!l10]+$/u', '', $element->href);//l10を空白に置き換える正規表現 $dat_preg = "/\w+:\/\/\w+\.\w+\.\w+\/\w+\/\w+\.\w+\/(\w+)\/(\d+)\//";//スレッドURLから板名とスレッド番号を抜き出す正規表現 $dat_url = preg_replace($dat_preg, "http://open2ch.net/$1/dat/$2.dat", $url_li);//スレッドURLをdatのURLに変換 $dat_name = preg_replace($dat_preg, "$2", $url_li);//ファル名ようにスレッドの番号を取得 $dat_text = file_get_contents($dat_url, false, $context);//datを取得 //$dat_text = mb_convert_encoding($dat_text, "UTF-8", "SJIS");//SJISからUTF-8にエンコード file_put_contents("dat/news4vip/".$dat_name.".dat", $dat_text);//取得したdatを保存 print($dat_name.".dat\n");//保存されたdatのファイル名 $time = mt_rand(1, 10);//時間を1~10の間でランダムで生成 sleep($time);//ランダム生成された数字の分だけスリープ print($time."\n\n");//スリープされた時間を表示 }
Private
[
?
]
Run code
Submit