PHP如何实现网页截图?

如何使用PHP实现网页截图

PHP实现网页截图是一个在日常开发中不常见的需求,但是如果实现还是非常有意思的。目前业界有很多成熟的方案,下面我推荐使用一个很稳定的第三方服务来直接实现,该服务有如下特点:

  • 支持多线路
  • 支持登录截图
  • 支持UA变换
  • 支持Cookie注入 实现登录截图
  • 支持自定义宽高
  • 支持网页滚动截图
  • 支持设定截图前的延迟时间

首先我们打开 它的首页 www.screenshotmaster.com/ 注册一个账号,然后你会在用户中心获取到一个唯一的Token,保存好这个Token 不要泄漏!

下面来看看它支持的参数:

网页截图API参数

您可以前往API文档页面查看更多的参数。

使用PHP调用截屏大师的接口获取截图:

//参数
$token = 'YOUR_API_TOKEN';
$url = urlencode('https://www.baidu.com');
$width = 1200;
$height = 800;
$full_page = 1;

// 构造URL
$query = "https://www.screenshotmaster.com/api/v1/screenshot";
$query .= "?token=$token&url=$url&width=$width&height=$height&full_page=$full_page";

// 调用API
$image = file_get_contents($query);

// 保存截图
file_put_contents('./screenshot.png', $image);

然后?没有然后了,就这么简单!
Enjoy Yourself!

php
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 5

第一个想到的是 html2canvas ,然后才反应过来用 PHP,强

1个月前 评论

我还以为是无头浏览器实现,没想到是调用别人的接口。 :dog:

1个月前 评论
萧潇 (楼主) 1个月前

当前每月使用次数 100

如果真正在实际应用中 100个截图,不够用。

只能去花钱去购买

如果是花钱,还是选择自己开发吧

1个月前 评论
萧潇 (楼主) 1个月前

标题和内容严重不符呀 :sob:

1个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!