十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这些都是正则表达式,自己百度先学会正则表达式再说吧。。
成都创新互联是一家专业提供防城港企业网站建设,专注与成都网站设计、成都做网站、H5技术、小程序制作等业务。10年已为防城港众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
只要是能正常访问都可以采集的。
我解释一个吧
/^http:\/\/www\.cpp1\.cn\/News\/[0-9]{4}-[0-9]{1,2}\/[0-9]{1,2}\/[0-9]+\.htm/i
就是匹配'这里是任意四个0-9的数'-‘一个或者二个0-9的数’/'一个或者二个0-9的数'/'任意数量的0-9的数'.htm
例如
工具/原料
PHPCMS
文章采集器
方法/步骤
1、首先我们需要下载并安装GBK格式的PHPCMS系统。
2、下载PHPCMS和文章采集器的接口文件
3、将jiekou.php文件复制到网站的根目录下,并用记事本打开该文件,修改“密码验证”栏目password处的密码
4、启动文章采集器,先点击【第三步发布内容设置】中的"web发布管理配置"
5、在弹出的【web发布配置管理】窗口中单击右侧的【更多】按钮,导入“phpcms9.wpm”配置模块,并选择该模块
6、设置【web发布配置管理】中的编码设置、登录操作、获取分类栏目等选项
7、单击【测试】按钮,在弹出的【发布配置测试】对话框中设置标签和内容的值,此项为必须设置,否则发布测试文章会失败。至此PHPCMS已经与文章采集器连接成功。
问题其实不难,自己都能写。给你几个思路吧:
1.在百度知道中,输入linux,然后会出现列表。复制浏览器地址栏内容。
然后翻页,在复制地址栏内容,看看有什么不同,不同之处,就是你要循环分页的i值。
当然这个是笨方法。
2.使用php的file或者file_get_contents函数,获取链接URL的内容。
3.通过php正则表达式,获取你需要的3个字段内容。
4.写入数据库。
需要注意的是,百度知道有可能做了防抓取的功能,你刚一抓几个页面,可能会被禁止。
建议也就抓10页数据。
其实不难,你肯定写的出来。 还有,网上应该有很多抓取工具,你找找看,然后将抓下来的数据
在做分析。写入数据库。
简单的分了几个步骤:
1、确定采集目标
2、获取目标远程页面内容(curl、file_get_contents)
3、分析页面html源码,正则匹配你需要的内容(preg_match、preg_match_all),这一步最为重要,不同页面正则匹配规则不一样
4、入库
只举例说明,生产环境你自己根据情景去搞
$url = '';
$content = file_get_content($url);//抓取网页全部内容
preg_match( string pattern, string subject [, array matches ] );//正则获取自己需要的内容
入库~
完事了。。。
当然,情形复杂,例如需要登录,采集目标限制等问题,这再说...
实际使用的时候,可以直接使用Snoopy类,提供好多方法供使用,比自己去造轮子要安全,当然,你可以在她的基础上再去造轮子~~~