文档章节

用PHP做采集功能网站的思路

FeanLau
 FeanLau
发布于 2017/05/03 11:14
字数 215
阅读 12
收藏 0
点赞 0
评论 0

1、指定一个列表页,用curl或file_get_contents将页面读取进来;
2、用正则或者XML分析DOM,获取到列表中文章的超链接,将其保存为一个任务数组;
3、遍历数组(循环),使用curl或file_get_contents将数组中的超链接指向的页面读取进来;
4、用正则或者XML分析DOM,获取到文章正文内容,将内容写入数据库中或者使用file_put_contents保存下来。
这是我的大体思路,有错误之处请指正。
可能需要注意的问题:如果页面超时,可以改大脚本运行超时间;为了提高效率是否要改为并发执行的curl_multi;如果被盗取的网站使用了参考referer的防盗链机制需要伪造referer等。

© 著作权归作者所有

共有 人打赏支持
FeanLau
粉丝 3
博文 201
码字总数 129363
作品 0
浦东
程序员
关于PHP批量采集----采集小说站有感

概况:帮周同学做小说采集做了有一段时间了。一开始是从其它网站的页面上直接写正则去采集,然后慢慢的转为采集别人提供的API。 环境:CENTOS+NGINX+PHP5.2.17。基于JIEQI小说管理系统。 直接...

jacky_chen ⋅ 2013/06/24 ⋅ 4

PHP采集 抓取

今天被安排做一下搜狐首页新闻部分抓取。本来很简单的事情,谁知到了搜狐页面抓过来的一直是乱码,怎么转都不行。只好深入研究了一下,也学到不少东西,写下来分享一下。 一、 什么是php采集...

idea_biu ⋅ 2012/08/22 ⋅ 1

关于php缓存的问题!

假如说有一个a.php文件,这个程序是采集其他网站的信息,当用户访问网页的时候会用ajax触发这个php程序进行采集,但是我不想让用户每次来的时候都进行采集,规定1个小时内的内容不变,一个小...

phpnewnew ⋅ 2012/10/28 ⋅ 3

使用PHP做网页采集实例过程总结

最近有个任务是需要我检查一些网站,如果纯手工检查的话,感觉既费时又无聊。所以我就想用采集。思路其实很简单,先把网站的源码采集下来,然后用正则表达式去匹配符合的链接,最后把标题和网...

章郎虫 ⋅ 2013/12/27 ⋅ 0

EaglePHP v1.8 更新日志

EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重 用...

oschina ⋅ 2012/06/10 ⋅ 0

php获取网站来访者qq

看到thinkphp上有个同行开发了一套获取网站来访者qq,问过他,但是他不肯说怎么实现的, 各种百度,谷歌都没有解决办法, 客户在他的网站注册或得一段js代码,放入自己的网站中,有人浏览该网站就会...

zhangya4548 ⋅ 2013/12/30 ⋅ 3

php的采集怎么才能更快一点?

目前做的采集是采集其他网站的网页title,description和keyword,使用的是curl,发现和其他具有采集title的功能的网站比起来比较慢啊,怎么才能让curl快一点,或者用别的办法。大神赐教!...

phpnewnew ⋅ 2012/10/29 ⋅ 12

如何防止网站被人采集啊!小弟快被采死了。

我弟手里有个网站。 服务器环境:lnmpa 除了最新的页面是动态的,页面产生时间超过24h的都静态化(为了节约资源,当页面被访问的时候,才会触发静态化)。 问题: 被人采集了。。。 我的解决办...

有人 ⋅ 2013/03/12 ⋅ 13

汉字笔画笔顺演示程序

有没有大侠帮帮忙,,提供个思路, 公司要求做一个汉字笔画笔顺演示的PHP程序,但是一直找不到思路,谁能帮忙提供点思路和想法或者有好的网站提供借鉴下, 附两个示例网站:功能需要跟他们类...

hueigezi ⋅ 2015/04/05 ⋅ 1

WP-o-Matic数据采集器 汉化版,以及BUG修改.

WordPress数据采集插件WP-o-Matic汉化版 相信各位懒人们和做站群的人都不会陌生一款名叫WP-o-Matic的wordpress数据采集插件。我初次见到时也为之倾倒(夸张)…由于工作原因客户提出在他们的系...

ap0581w9c ⋅ 2012/09/03 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JDK1.6和JDK1.7中,Collections.sort的区别,

背景 最近,项目正在集成测试阶段,项目在服务器上运行了一段时间,点击表格的列进行排序的时候,有的列排序正常,有的列在排序的时候,在后台会抛出如下异常,查询到不到数据,而且在另外一...

tsmyk0715 ⋅ 23分钟前 ⋅ 0

spring RESTful

spring RESTful官方文档:http://spring.io/guides/gs/rest-service/ 1. 可以这么去理解RESTful:其实就是web对外提供的一种基于URL、URI的资源供给服务。不是一个原理性知识点。是一个方法论...

BobwithB ⋅ 25分钟前 ⋅ 0

C++ 中命名空间的 5 个常见用法

相信小伙伴们对C++已经非常熟悉,但是对命名空间经常使用到的地方还不是很明白,这篇文章就针对命名空间这一块做了一个叙述。 命名空间在1995年被引入到 c++ 标准中,通常是这样定义的: 命名...

柳猫 ⋅ 28分钟前 ⋅ 0

@Conditional派生注解

@Conditional派生注解(Spring注解版原生的@Conditional作用) 作用:必须是@Conditional指定的条件成立,才给容器中添加组件,配置配里面的所有内容才生效; @Conditional扩展注解 作用(判...

小致dad ⋅ 28分钟前 ⋅ 0

适配器模式

适配器模式 对象适配器 通过私有属性来实现的类适配器 通过继承来实现的接口适配器 通过继承一个默认实现的类实现的

Cobbage ⋅ 32分钟前 ⋅ 0

Java 限流策略

概要 在大数据量高并发访问时,经常会出现服务或接口面对暴涨的请求而不可用的情况,甚至引发连锁反映导致整个系统崩溃。此时你需要使用的技术手段之一就是限流,当请求达到一定的并发数或速...

轨迹_ ⋅ 36分钟前 ⋅ 0

GridView和子View之间的间隙

默认的情况下GridView和子View之间会有一个间隙,原因是GridView为了在子View被选中时在子View周围显示一个框。去掉的办法如下: android:listSelector="#0000" 或 setSelector(new ColorDra...

国仔饼 ⋅ 39分钟前 ⋅ 0

idea插件开发

1 刷新页面要使用多线程 2 调试要使用restart bug 不要去关闭调试的idea 否则再次启动会卡住

林伟琨 ⋅ 39分钟前 ⋅ 0

Java 内存模型

物理机并发处理方案 绝大多数计算任务,并不是单纯依赖 cpu 的计算完成,不可避免需要与内存交互,获取数据。内存要拿到数据,需要和硬盘发生 I/O 操作。计算机存储设备与 cpu 之间的处理速度...

长安一梦 ⋅ 46分钟前 ⋅ 0

思路分析 如何通过反射 给 bean entity 对象 的List 集合属性赋值?

其实 这块 大家 去 看 springmvc 源码 肯定可以找到实现办法。 因为 spirngmvc 的方法 是可以 为 对象 参数里面的 list 属性赋值的。 我也没有看 具体的 mvc 源码实现,我这里只是 写一个 简...

之渊 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部