我正在尝试使用phantomjs的exmaple文件夹中的rasterize.js将网页捕获为PDF.我遇到的问题是网页需要用户登录.然后我看到Phantomjs有一个cookie选项.该网站是Django供电,以防万一.
所以我顽皮地登录了网站,打开了萤火虫,并输入document.cookie
了萤火虫.我得到了cookie设置并放入了我的cookies.txt.
[http://localhost:7000]
csrftoken: f3da886168fae33b840e7f6c93240dff
sessionid: 27e90c3214b0ec94dadc739665724708
django_language: en
Run Code Online (Sandbox Code Playgroud)
然后我使用rasterize.js创建如下所示的pdf:
phantomjs --cookies-file=cookies.txt examples/rasterize.js http://localhost:7000/reports /tmp/report.pdf
Run Code Online (Sandbox Code Playgroud)
但结果仍然是登录页面.
您是否尝试过自动化PhantomJS中的登录过程,确保包含cookie参数?通过这种方式,phantomjs可以像使用cookie一样对浏览器进行身份验证.
另一种选择是使用像fiddler这样的代理检查请求,比较从有效的firefox发出的请求和从未经过身份验证的phantomjs发出的请求.标题中的信息应该告诉您缺少的内容.
您可以使用phantomjs提供的功能添加cookie:
http://phantomjs.org/api/webpage/method/add-cookie.html
归档时间: |
|
查看次数: |
15573 次 |
最近记录: |