php开发通用采集程序
php采集程序构建基本步骤: 采集程序是什么?获取远程数据(文字、图片、图片)并快速保存到本地或指定地址。 如天气预报(小偷程序): 远程获取--》替换内容--》展示给用户 如实时更新的新闻(采集内容): 远程获取--》提取内容--》分类存储--》读取内容---》展示内容
************************* 设计PHP采集入库UML 列表正则: 终端正则:
************************** file_get_contents()获取远程页面内容 preg_match_all()匹配列表 preg_match()匹配终端 preg_replace() :过滤终端 ************************** 新建一个列表文件:lb.php echo $con=file_get_cotents($_GET[url]); $preg ="#<h1><a href='(.*)' target='_blank'>(.*)</a><span>#iUs";
pg_match_all($preg,$conn,$arr); foreach($arr[1] as $id=>$v){ echo $v." "arr[2][$id]."<br>"; }
新建vi。php获取标题
vi.php
$con=file_get_contents(); $preg="<title>(.*)</title>/iUs";//大小写不敏感,防止贪婪匹配,防止换行 echo zz($preg,$con); function zz($preg,$con,$num=1){ preg_match($preg,$con,$arr); return $arr[$num]; } echo $arr[1];//获取标题 echo "<a href=vi.php?url=".$v.">".arr[2][$id]."<br>"; ====================================== php100:83:采集程序
lb.php <?php if($_GET[id]){ $con=file_get_cotents($_GET[url].$_GET[id]."shtml"); $preg ="/<h1><a href='(.*)' target='_blank'>(.*)</a><span>/iUs";
perg_match_all($preg,$conn,$arr); foreach($arr[1] as $id=>$v){ echo $v." "arr[2][$id]."<br>"; } $_GET[id]++;
echo "<script>location.href='lb.php?id='.$_GET[id]."</script>"; } ?>
http://www.xinhuanet.com/finance/tzxx.htm
=============================================================== 操作步骤: 1.新建一个数据库caiji,tep_url表,id,title,content,11 ,100,150 2.新建一个conn.php,插入的语句可以通过phpmyadmin插入一个语句简单的获得 3.新建一个vi.php 4.单条入库获取下一条。
临时的路径列表: 完善我的入库表。
假设删删除了其中的一条Id值,怎么办?删除了第9条! 多加一条语句 $sql2="select * from tmp_url where id>'$gid'order by id asc limit 1
php开发通用采集程序的更多相关文章
- [转]使用Sencha Ext JS 6打造通用应用程序
原文地址:http://www.uedsc.com/using-sencha-ext-js-6-to-build-universal-apps.html 在Sencha和整个Ext JS团队的支持下, ...
- 用.NET开发通用Windows App
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:随着Windows 10的正式发布,作为.NET开发人员应该开始或多或少了解一下通用( ...
- 【转】使用NetBeans和Eclipse开发PHP应用程序
[51CTO独家特稿]各位用户如果单独看NetBeans和Eclipse的市场占有率,你可能会认为使用其中任何一种IDE开发PHP应用程序都没有 问题,例如: 1.NetBeans:一款开源的集成开发 ...
- 马上着手开发Mac应用程序
你是否想要开发 Mac 应用程序却又不知道从哪里入手?本路线图提供了 Mac 应用程序开发的绝佳起点,即使你已经是一个 iOS 开发专家,本路线图对你依然适用.Apple让开发应用程序和提交应用程序到 ...
- 在桌面Linux环境下开发图形界面程序的方案对比
在Linux下开发GUI程序的方法有很多,比如Gnome桌面使用GTK+作为默认的图形界面库,KDE桌面使用Qt作为默认的图形界面库,wxWidgets则是另一个使用广泛的图形库,此外使用Java中的 ...
- 创建UWP通用应用程序
一,下载VS2015,下载地址:https://www.visualstudio.com/zh-hans/downloads/ VS2015下载地址 二,选择UWP开发工具并安装 VS2015配置 三 ...
- 【翻译】使用Sencha Ext JS 6打造通用应用程序
原文:Using Sencha Ext JS 6 to Build Universal Apps {.aligncenter} 在Sencha和整个Ext JS团队的支持下,我很高兴能跟大家分享一下有 ...
- 使用Dapper.Contrib 开发.net core程序,兼容多种数据库
关于Dapper的介绍,我想很多人都对它有一定的了解,这个类似一个轻型的ORM框架是目前应用非常火的一个东西,据说各方面的性能都不错,而且可以支持多种数据库,在开始介绍这个文章之前,我花了不少功夫来学 ...
- 利用WordPress REST API 开发微信小程序从入门到放弃
自从我发布并开源WordPress版微信小程序以来,很多WordPress网站的站长问有关程序开发的问题,其实在文章:<用微信小程序连接WordPress网站>讲述过一些基本的要点,不过仍 ...
随机推荐
- #define中 #与##的神奇用法linux学习 (转)
#define中 #与##的神奇用法linux学习 (转) #define f(a,b) a##b #define d(a) #a #define s(a) d(a) void main( void ...
- Delphi 多线程 “尚未调用CoInitialize错误”的解决方法
在Delphi 多线程中出现“尚未调用CoInitialize错误”的解决方法 解决方法如下: function TMyThread.ExecTimer: Boolean;begin Resul ...
- app开发历程---1,servlet 返回JSON作为android 接口实例
最近公司领导要做app,虽然以前自己是做app的测试的,但是好多东西都不是很明白,这里记录自己这段日子的历程. 1.搭建服务器端,以前做测试的时候,他们用的是Apache+mysql+php,而自己上 ...
- cf591A Wizards' Duel
A. Wizards' Duel time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...
- fstream的用法
本文转载自 http://www.newxing.com/Tech/Program/Cpp/577.html C++文件流:fstream // 文件流ifstream // 输入文件流ofst ...
- H1B工作签证紧俏 “中签率”低对中国留学生影响大-中新网
H1B工作签证紧俏 "中签率"低对中国留学生影响大-中新网 H1B工作签证紧俏 "中签率"低对中国留学生影响大
- Hat’s Words hdu-1247
就是查找这个单词能不能有两个单词组成,简单的字典树题目 ////////////////////////////////////////////////////////////// #include& ...
- struts接收参数方式
第一种,直接用action的属性接收,是初学者常用的方法. package com.starain.user; public class User{ private String username; ...
- Oracle执行计划——使用index full scan的几种情况
常见有三种情况都有用到indexfull scan. 1. 查询列就是索引列 2. 对索引列进行order by时 3. 对索列进行聚合计算时
- JavaScript typeof obj === ‘object’ 这样写有什么问题
typeof Array, Object, new Class() 都会返回'object', 所以使用typeof不能准确的判断变量是否为object typeof []; //object ty ...