PHP代码-数据爬取(a标签和a标签所对应的内容)
public function export(){
set_time_limit(1000);
// header("Content-type: text/html; charset=utf-8");
$a = file_get_contents('http://chuangye.yjbys.com/zhengce/');
$reg = '/<\/span><a href="(.*)" (.*)>(.*)</isU';
$result = preg_match_all($reg,$a,$match_result);
$arr = array();
foreach($match_result[1] as $k=>$v){
$tnum = strlen($match_result[3][$k]);
if(substr($v,0,1) == 'h' && $tnum>21){
$arr[$k]['art_url'] = $v;
$arr[$k]['art_title'] = mb_convert_encoding($match_result[3][$k], "UTF-8",'gbk');
// $match_result[3][$k];
mb_convert_encoding($match_result[3][$k], "UTF-8",'gbk');
$b = file_get_contents($v);
preg_match('/<div class=\"content\">(.*)<\/div>/s',$b,$match);
$match[0] = iconv("gbk", "utf-8", $match[0]);
$num = strpos($match[0],'<script type="text/javascript">a("content_body");</script>');
$cont = substr($match[0],0,$num)."</div>";
$cony = str_replace('<div class="ad_top_left"><script type="text/javascript">a("content_1");</script></div>',"",$cont);
$cont = str_replace('<div class="ad_top_left2"><script type="text/javascript">a("content_2");</script></div>',"",$cony);
// $cont = str_replace('“','“',$cont);
// $cont = str_replace('”','”',$cont);
// $cont = str_replace('…','~',$cont);
// $cont = str_replace('—','-',$cont);
// $cont = str_replace('"','“',$cont);
// $cont = str_replace('•','•',$cont);
$arr[$k]['art_content'] = html_entity_decode($cont);
$arr[$k]['state'] = 0;
$arr[$k]['type'] = 4;
$arr[$k]['userid'] = 4;
}
}
$arr = array_values($arr);
// print_r($arr);die;
// $arr2=array_iconv("gbk","utf-8",$arr);
// print_r($arr);die;
$article = M('cxpt_user_article');
var_dump($article->addAll($arr));echo $article->getLastSql();die;
// foreach($arr as &$v){
// $b = file_get_contents($v['url']);
// preg_match('/<div class=\"content\">(.*)<\/div>/s',$b,$match);
// $num = strpos($match[0],'<script type="text/javascript">a("content_body");</script>');
// $v['content'] = substr($match[0],0,$num);
// }
// foreach($arr as $v){
// $info['art_title'] = $v['title'];
// $info['art_content'] = $v['content'];
// }
// print_r($arr);die;
}
PHP代码-数据爬取(a标签和a标签所对应的内容)的更多相关文章
- 基于 PHP 的数据爬取(QueryList)
基于PHP的数据爬取 官方网站站点 简单. 灵活.强大的PHP采集工具,让采集更简单一点. 简介: QueryList使用jQuery选择器来做采集,让你告别复杂的正则表达式:QueryList具有j ...
- 爬虫1.5-ajax数据爬取
目录 爬虫-ajax数据爬取 1. ajax数据 2. selenium+chromedriver知识准备 3. selenium+chromedriver实战拉勾网爬虫代码 爬虫-ajax数据爬取 ...
- 小爬爬5:重点回顾&&移动端数据爬取1
1. ()什么是selenium - 基于浏览器自动化的一个模块 ()在爬虫中为什么使用selenium及其和爬虫之间的关联 - 可以便捷的获取动态加载的数据 - 实现模拟登陆 ()列举常见的sele ...
- python实现人人网用户数据爬取及简单分析
这是之前做的一个小项目.这几天刚好整理了一些相关资料,顺便就在这里做一个梳理啦~ 简单来说这个项目实现了,登录人人网并爬取用户数据.并对用户数据进行分析挖掘,终于效果例如以下:1.存储人人网用户数据( ...
- 芝麻HTTP:JavaScript加密逻辑分析与Python模拟执行实现数据爬取
本节来说明一下 JavaScript 加密逻辑分析并利用 Python 模拟执行 JavaScript 实现数据爬取的过程.在这里以中国空气质量在线监测分析平台为例来进行分析,主要分析其加密逻辑及破解 ...
- Python爬虫 股票数据爬取
前一篇提到了与股票数据相关的可能几种数据情况,本篇接着上篇,介绍一下多个网页的数据爬取.目标抓取平安银行(000001)从1989年~2017年的全部财务数据. 数据源分析 地址分析 http://m ...
- quotes 整站数据爬取存mongo
安装完成scrapy后爬取部分信息已经不能满足躁动的心了,那么试试http://quotes.toscrape.com/整站数据爬取 第一部分 项目创建 1.进入到存储项目的文件夹,执行指令 scra ...
- Ajax数据爬取
Ajax的基本原理 以菜鸟教程的代码为例: XMLHTTPRequest对象是JS对Ajax的底层实现: var xmlhttp; if (window.XMLHttpRequest) { // IE ...
- Python爬虫入门教程 15-100 石家庄政民互动数据爬取
石家庄政民互动数据爬取-写在前面 今天,咱抓取一个网站,这个网站呢,涉及的内容就是 网友留言和回复,特别简单,但是网站是gov的.网址为 http://www.sjz.gov.cn/col/14900 ...
随机推荐
- ubuntu安装elasticsearch
0x00安装jdk ElasticSearch需要安装jdk1.8以上版本的支持,所以需要先安装jdk.linux下如何安装可以查看另一篇博客 0x01 下载elasticsearch 在es官网下载 ...
- HBuilder
什么是HBuilder? HBbuilder是DCloud(数字天堂)推出的一款支持HTML5的WEB开发IDE,主体是由java编写的,它将HTML/JS代码块进行代码封装,达到简单数据形成代码的特 ...
- PAT甲级1078 Hashing【hash】
题目:https://pintia.cn/problem-sets/994805342720868352/problems/994805389634158592 题意: 给定哈希表的大小和n个数,使用 ...
- 防止enter提交表单
如何防止回车(enter)键提交表单,其实很简单,就一句话.onkeydown="if(event.keyCode==13)return false;"把这句写在from标签里面就 ...
- SVN百度云服务器安装使用。
安装SVN客户端 此时,必须重启,否则经常出现用不了. 重启后,还是用不了的话,那么就重新安装系统. 网站地址: http://xiaomosheng.bceapp.com/ SVN代码服务器的地址: ...
- oracle学习笔记第一天
oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字 1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...
- 常见MQTT服务器搭建与试用
常见MQTT服务器搭建与试用 简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽.不可靠 ...
- Python3学习之路~7.2 类的特殊成员方法
1. __doc__ 表示类的描述信息 class Dog(object): """ 这个类是描述狗这个对象的 """ def func(s ...
- windows下安装php reids扩展
1.使用phpinfo()函数查看PHP的版本信息,这会决定扩展文件版本. 2.下载php_igbinary-1.2.1-5.5-ts-vc11-x64.zip,php_redis-2.2.5-5.6 ...
- 自定义bash提示符
http://adamcavendish.is-programmer.com/posts/35659.html