打印网页源码
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的行为,先禁用浏览器的所有加载项试试