PHP多进程实现图书馆图书爬虫(限校园网访问)
文件
library.php
运行方式
$php -f library.php
运行结果
爬取成功:图书信息存入数据库library_books表
爬取失败:存入redeal_no表
运行信息:存入library.log日志文件
top:表示图书信息解析出错
under:表示因为图书状态就判断没有该图书
订购:表示因为处于订购原因没有爬取成功
验收:表示因为处于验收原因没有爬取成功
title is null:表示图书以存入数据库,但是没有名字
auther is null:表示图书以存入数据库,但是没有著作
press is null:表示图书以存入数据库,但是没有出版社
time is null:表示图书以存入数据库,但是没有出版时间
后期处理
对于redeal_no表中timeout数据,运行redeal.php处理
对于top、under、title、auther、press、time数据,尽可能排查并修改正则以兼容此类问题
对于订购、验收数据,认定暂时图书信息有误或不存在,可以先略过。
文件
redeal.php
运行方式
$php -f redeal.php
运行输出
控制台监控输出
运行结果
对数据库redeal_no表中timeout数据,再进行爬取处理,如果成功,就删除该条记录。并将图书信息存入数据库library_books表,反之存入redeal_no表,并且备注原因(timeout,top,under,订阅,验收等)。
后期处理
尽可能排除所有timeout数据。
文件
reptile.php
类型
图书详情页爬虫处理
文件
library_books.sql
类型
数据库library_books表结构
文件
timeout_no.sql
类型
数据库timeout_no表结构
文件
library.log
类型
library.php程序运行日志文件
版权声明:
1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。2、网站不提供资料下载,如需下载请到原作者页面进行下载。
3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考学习用!
4、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。