列印網頁源碼
1. 爬蟲使用requests中的text函數並print列印網頁源代碼,但是顯示的內容不全,該怎麼解決
不是不全,而是這些內容是使用插件顯示的,只抓原網頁不行的,在抓下包,應該有單獨的請求返回
2. 列印網頁部分內容代碼
網頁列印按鈕的源代碼:javascript:window.print();
@media print
.a {display:block}
.b {display:hidden}
好像是這樣。把你不想列印的部分class設為b
首先在網頁中添加:
然後就可以依次加入功能按鈕了:
將這兩塊東西放到就不會列印這些按鈕了。當然要定義noprint了:
.Noprint { DISPLAY: none }只要把不想列印的東西的css設置成noprint就可以了。
現在就實現了基本的web列印,需要注意的情況如下:
必須將ie的internet選項的安全設置中對於沒有標記為安全的ActiveX控制項進行...設置成提示或者啟用,否則會報錯,導致不可用。
3. 分頁列印網頁怎麼做js或者jquery
用法:
$("div#printmain").printArea();
但還是會列印DIV後面的內容,這里可以使用CSS控制列印分頁
<div style="page-break-after: always;"></div>
有時用CSS控制分頁了但還是會連續列印頁面,這里就可以用上PrintArea 插件中的屬性參數。
PrintArea部分源碼:
var modes = { iframe : "iframe", popup : "popup" };
var defaults = { mode : modes.iframe,
popHt : 800,
popWd : 800,
popX : 200,
popY : 200,
popTitle : '',
popClose : false ,
twoDiv : '', //自已擴展的屬性,為滿足變態需求
pageTitle: ''};//自已擴展的屬性,為滿足變態需求
可以看出插件中定義的屬性格式為JSON,下面介紹部分屬性
modes定義了兩個屬性,指定popup時會打開新窗口,可以視為列印預覽頁面,默認為iframe。
@popClose | [boolean] | (false),true 列印完成後是否開閉預覽頁面,默認為false(不關閉)。
$("div#printmain").printArea({mode:"popup",popClose:true});
這樣就可以指定DIV列印了。
下面說一下我新增兩個屬性的用途
twoDiv:
需要列印的第二個DIV ,當然會是第二頁,這個頁面比較長,需要自動分頁,並且表格中每行都不一樣,有些行跨了多行,這里列印出來,一行可能會列印在兩張紙上。
pageTitle:
第二個DIV分成多頁里,每一頁的表頭都需要一樣,這個參數就是公用表頭。
這兩個參數都對應著頁面中的DIV,如:
<div id="pageTitle" style="display: none;">
頁面定義好後,我們看看插件中是如何處理我們的頁面的。
writeDoc.open();
writeDoc.write(html); //打找一個窗口關寫窗口中的HTML代碼
writeDoc.close();
printWindow.focus();
printWindow.print();
下面是生成html的代碼
html+=docType() + "<html>" + getHead() + getBody(thisPage) + "</html>";
插件中都定義了相義的方法,我沒有做任何修改,這里我就不粘貼了。
下面是我的思路:
需在將一個DIV中的內容分成多頁,且一行不跨多頁,我們就得在生成html 代碼上下功夫了。
首先找出DIV中的所有行,當公共表頭加上這些行後高度達到一頁,就需要分頁了,這里就有可以一頁中最後一行剛好跨了多頁,將這一行保存下來,放到下一頁。
每一頁生成完成後都需要在HTML標簽後面加上CSS分頁標記,這樣就列印機就會乖乖的分頁。
說明一下,生成的預覽頁面一頁就是一個HTML頁面,它有對應的表頭與DTD信息。
有人可能明明預覽只有4頁,而列印出來總會多一頁,這時你需要檢驗一下你生成的頁面中分頁標記是不是在HTML標簽之前。
分面標記一定要在HTML標簽之後,這樣可解決列印多打一頁問題。
4. python用scrapy框架列印網頁源碼報錯
終於解決了,是控制台編碼的問題,默認是gbk編碼,改成utf8編碼就行,不用在pycharm裡面改編碼。
控制台使用命令:chcp 65001
5. 網頁列印出來是源代碼
還有一個問題,你管理員有沒有把列印許可權允許。
6. 列印網頁時列印成了源代碼
暫時沒遇到過你這種問題,如果你想列印的話有一種簡單的方法,把頁面抓個圖,然後列印這個抓圖就出來了。
7. 列印網頁頁面,但是列印出了網頁的源代碼,列印預覽也是顯示源代碼。怎麼列印網頁本來的啊
碰到一個問題一樣,就是windows 7 64位操作系統,但是列印空白,列印出來像白紙一樣!經過查看和總結,確認是:由於保護模式下 %Temp%\Low 文件夾工作不正常引起的!故障列印白紙下面會出現類似:C:\Users\\AppData\Local\Temp\Low\xxxx.htm這樣的網頁。
原因:這種情況,多半由於保護模式下 %Temp%\Low 文件夾工作不正常引起的(被誤刪除、移位等等)
解決方法:
(1)重置IE安全級別
(2)在用戶模式下,在附件中找到cmd創建low文件,具體命令如下
mkdir %userprofile%\AppData\Local\Temp\Low
ICACLS "%userprofile%\AppData\Local\Temp\Low" /setintegritylevel (OI)(CI)low
如果用戶具有管理員許可權,請把以下代碼保存為bat批處理文件運行:
@ECHO off
If not exist %userprofile%\AppData\Local\Temp\Low (
echo.
echo Creating Low Folder...
mkdir %userprofile%\AppData\Local\Temp\Low
)
echo.
echo Apply Integrity Level...
echo.
ICACLS "%userprofile%\AppData\Local\Temp\Low" /setintegritylevel (OI)(CI)low
exit
總結:這個解決方法可能不是萬能的,可能只是針對某些故障的特定方法,不一定適用所有情況,不過也是一個考慮的方向和排除故障的考慮范圍。
8. 怎樣列印網頁上的html代碼
在網頁頁面上右擊《查看源代碼》
選擇頂部導航的《文件》-《列印》
這樣源代碼就列印出來了
希望你的問題能解決,望採納
9. HP列印機列印網頁為什麼列印出源代碼!
肯定是某些破載入項改了ie的行為,先禁用瀏覽器的所有載入項試試