约定
目录结构
- app/Console/Commands
- Spider.php // 爬虫主程序
- Post.php // 远程发布
- Helpers
- common.php // 公用辅助函数
 
- Traits
- 从 Spider.php 水平抽离出来的一些方法
 
 
- config/spider.php // 全局配置,比如全局超时时间等
- config/sites/* // 存放需要爬取的网站信息
- config/user_agents.php // User-Agent 池,用来随机
页面
爬取目标站时,一般都是列表页和内容页
- 列表页: 具有分页
- 内容页: 列表页中的子项,点击链接进去的页面
有些网站会多一个页面,比如它有一个网站地图,里面有 100 多个标签,比如软件下载站,它提供的地图标签是「音乐」、「视频剪辑」、「杀毒」等,然后点击进去才是一个列表。
上面的情况,我们就需要再收集到地图页面的链接,然后填入列表页的 urls 中。
标签名
标题:
正文:
封面:列表页的缩略图
环境
- 当没有存在 .env 文件时,视为正式环境。
- 存在时,根据指定的值。
调试
当存在 .env 时,且 APP_ENV 为 local 时,则默认开启调试。
调试模式
调试模式下
- 不上传文章。如果要发送,应当指定 --post 选项。
- 可以指定调试等级
- --v。只显示关键信息。
- --vv。在 --v 基础上,多显示了文章、图片等数量。
- --vvv。在 --vv 基础上,把目前能显示的都显示出来。