<?php
namespace Jg\Controller;
use Module\Db\M;
class PaChongController extends \Jg\Common\BaseController {
public function index()
{
$url = 'https://my.oschina.net/u/3637633/blog/1629738';
$co = $this->get_info($url);
$co = str_replace(["<br>","\t","\n","\r"], '', $co);
//dump($co);
$title_preg = '#<h2 class="header">(.*)<div class="ui teal#';
preg_match_all($title_preg, $co, $a);
//dump(trim($a[1][0]));
$content_preg = '#</p> </div> (.*)<div class="ad-wrap" style="margin-top: 12px;">#';
preg_match_all($content_preg, $co, $b);
//dump(trim($b[1][0]));
$data = [
'title' => trim($a[1][0]),
'content' => trim($b[1][0]),
'url' =>$url
];
// M::link();
// M::table('article')->add($data);
echo $url;
}
public function getUrls(){
set_time_limit(0);
$url = 'https://www.oschina.net/search?scope=blog&q=CSS3';
$tag = 'CSS3';
$co = $this->get_info($url);
//dump($co);
$preg = '#<div class="meta">(.*)</div>#';
preg_match_all($preg, $co, $a);
dump($a[1]);
// foreach ($a[1] as $v) {
// $this->insertTable($v, $tag);
// }
// echo '成功';
}
protected function insertTable($url, $tag)
{
$co = $this->get_info($url);
$co = str_replace(["<br>","\t","\n","\r"], '', $co);
$title_preg = '#<h2 class="header">(.*)<div class="ui teal#';
preg_match_all($title_preg, $co, $a);
$content_preg = '#</p> </div> (.*)<div class="ad-wrap" style="margin-top: 12px;">#';
preg_match_all($content_preg, $co, $b);
$data = [
'title' => trim($a[1][0]),
'content' => trim($b[1][0]),
'url' =>$url,
'tag' => $tag
];
M::link();
$i = M::table('article')->where('url', $url)->find();
if(!$i) {
M::table('article')->add($data);
}
}
protected function get_info($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$content=curl_exec($ch);
curl_close($ch);
return $content;
}
}