python批量打印网页_web 批量打印
批量打印,同時(shí)打印多個(gè)頁(yè)面,有兩種思路:
第一種思路,將所有的頁(yè)面內(nèi)容加載到一個(gè)頁(yè)面中,然后再打印。這種打印方式有幾個(gè)弊端,頁(yè)面的樣式會(huì)丟失,頁(yè)面太多同時(shí)加載到一個(gè)頁(yè)面中,數(shù)據(jù)量太大,響應(yīng)時(shí)間很長(zhǎng),消耗的資源過(guò)大,很可能導(dǎo)致瀏覽器崩潰,最終打印失敗。針對(duì)這種打印方式的弊端,可以通過(guò)限制批量打印數(shù)量的方法來(lái)避免。但樣式的問(wèn)題,似乎找不到解決方案。
第二種思路,調(diào)用每個(gè)頁(yè)面直接打印方法,逐個(gè)頁(yè)面打印。這種打印方式的弊端就是,調(diào)用每個(gè)頁(yè)面的打印方法都會(huì)彈出框,等待用戶確認(rèn)打印才行。
1>第一種思路
第一步:將所有頁(yè)面通過(guò)iframe加載到一個(gè)頁(yè)面中,每個(gè)頁(yè)面一個(gè)iframe
第二部:抓取每個(gè)iframe中的內(nèi)容,將其加載到一個(gè)新的窗口中,每個(gè)ifrmae中的內(nèi)容在打印的時(shí)候都強(qiáng)制分頁(yè)
第三部:調(diào)用新窗口的打印方法。
代碼如下:
$(function () {
//在iframe中顯示需要打印的頁(yè)面,設(shè)置iframe的高度為自適應(yīng)高度
$("iframe").each(function () {
$(this).load(function () {
$(this).height($(this).contents()[0].body.scrollHeight);
});
});
});
//將所有iframe中的內(nèi)容都加載到一個(gè)新的窗口中,然后調(diào)用新窗口的打印方法
function printAll() {
var win = window.open('about:blank');
var body = "";
$("iframe").each(function (i) {
var pageNextStr = '
var pageNext = $(pageNextStr);
pageNext.append($(this).contents()[0].find("from")[0].innerHTML);
body += pageNext[0].outerHTML;
});
win.document.body.innerHTML += body;
win.print();
win.close();
}
程序員的基礎(chǔ)教程:菜鳥程序員
總結(jié)
以上是生活随笔為你收集整理的python批量打印网页_web 批量打印的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: SiC功率半导体产业高峰论坛成功举办
- 下一篇: python 疯狂讲义 笔记(变量和基本