如何使用Phantomjs'饼干API?(How to use Phantomjs'

2019-08-06 02:21发布

我试图用rasterize.js从phantomjs'〔实施例文件夹捕捉到一个网页转换为PDF。 我遇到的问题是,网页需要用户登录,然后我看到有对Phantomjs一个cookie的选项。 该网站是Django的供电,以防万一它很重要。

所以,我登录到该网站勇敢地,开了萤火虫,和类型document.cookie在Firebug。 我得到的Cookie设置,并把我的cookie.txt的。

[http://localhost:7000]
csrftoken: f3da886168fae33b840e7f6c93240dff
sessionid: 27e90c3214b0ec94dadc739665724708
django_language: en

然后我用了rasterize.js创建PDF象下面这样:

phantomjs --cookies-file=cookies.txt examples/rasterize.js http://localhost:7000/reports /tmp/report.pdf

但结果仍是登录页面。

Answer 1:

您是否尝试自动登录过程中PhantomJS,确保包括饼干PARAM? 这样phantomjs可以验证用户身份,就像一个浏览器将使用的cookie。

另一种办法是检查使用像小提琴手的代理请求,比较的作品从Firefox提出的要求和未经过身份验证phantomjs提出的要求。 标题中的信息应该告诉你,你错过了什么。

您可以通过使用该功能phantomjs提供Cookie添加:

http://phantomjs.org/api/webpage/method/add-cookie.html



文章来源: How to use Phantomjs' cookie API?