html文件

html转换为pdf

梦想与她 提交于 2019-12-03 05:03:14
将html转换为pdf的工具有两个:phantomjs和wkhtmltopdf,下面分别对两个工具进行介绍。 phantomjs phantomjs不仅仅只是一个html2pdf的工具,这个是一个Headless WebKit(现在chrome也支持这种模式运行了),可以用来写前端测试等一系列的功能(可惜的是该项目已经停止维护了,项目地址: https://github.com/ariya/phantomjs )。回到主题,phantomjs使用简单,可以自己编写相关测输出脚本,运行的cmd:phantomjs.exe rasterize.js http://www.oschina.net/ test.pdf "A4",可以参考该项目的官方网址: https://phantomjs.org/ ,比较可惜的是,该项目在window下生成的pdf是很完美的,但是linux下生成的pdf文件就比较糟糕了,主要是dpi惹的祸,直到项目停止维护,该问题都没有解决。为了解决linux下可以完美渲染,在网上查找了很多资料,最终发现phantomjs的pdf生成功能依赖于另一个项目wkhtmltopdf。 wkhtmltopdf 该项目是一个将html转化为pdf的项目,项目地址: https://github.com/wkhtmltopdf/wkhtmltopdf ,该工具生成pdf非常简单

前端学习日记 (一)

半城伤御伤魂 提交于 2019-12-03 04:42:14
前端介绍 前端开发是创建WEB页面或APP等前端界面呈现给用户的过程,通过 HTML、CSS、JavaScript 以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。它从网页制作演变而来,名称上有很明显的时代特征。 HTML用于展现网页的内容、CSS用于展现网页的外观、JavaScript用于实现一些网页动作。 WEB框架的本质 浏览器输入网址回车后都发生了什么? 浏览器(客户端)给服务端发送了一个消息,服务端在拿到了消息之后,服务端返回消息,浏览器展示页面 客户端和服务端的消息格式要一致,因此就有了 HTTP协议 来约束两边的消息格式。 我们可以写一个服务端来访问自定义的网页: import socket sk = socket.socket() sk.bind(('127.0.0.1',8000)) sk.listen(4) while 1: conn,addr = sk.accept() data = conn.recv(1024) #接收消息 conn.send(b'HTTP/1.1 200 OK\r\n\r\n') conn.send(b'Hello World!') #发送消息 conn.close() 执行代码后再打开浏览器去访问127.0.0.1:8000这个网址,就可以看到下面的页面: 改变程式码: conn.send(b'<h1>Hello

简约而不简单的Django新手图文教程

人走茶凉 提交于 2019-12-03 02:47:46
一、Django简介   百度百科:开放源代码的Web应用框架,由Python语言编写......   重点:一个大而全的框架,啥都替你考虑好了。 1. web框架介绍   具体介绍Django之前,必须先介绍WEB框架等概念。   web框架: 别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。   一般web框架的架构是这样的:   其它基于python的web框架,如tornado、flask、webpy都是在这个范围内进行增删裁剪的。例如tornado用的是自己的异步非阻塞“wsgi”,flask则只提供了最精简和基本的框架。Django则是直接使用了WSGI,并实现了大部分功能。 2. MVC/MTV介绍    MVC百度百科 :全名Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。    通俗解释 :一种文件的组织和管理形式!不要被缩写吓到了,这其实就是把不同类型的文件放到不同的目录下的一种方法,然后取了个高大上的名字。当然,它带来的好处有很多,比如前后端分离,松耦合等等,就不详细说明了。    

Redis消息队列实现秒杀

匿名 (未验证) 提交于 2019-12-03 00:43:02
消息队列的应用场景例如:秒杀、抢单功能。 下面写个Demo简单实现一下秒杀,也就是抢购。 首先创建一个 lpush.html 文件,代码如下: <!DOCTYPE html> <html> <head> <title>TODO supply a title</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script src="jquery-3.2.1.min.js" ></script> <script> function push(uid){ $('#msg'+uid).html('请耐心等待.......'); $.get('lpush.php',{"uid":uid},function (data){ if(data == 1 ){ $('#msg'+uid).html('抢购成功!!'); }else{ $('#msg'+uid).html('抢购失败!!'); } }); } </script> </head> <body> <span id="msg5"></span><br> <input type="button" value="抢购5" onclick="push(5)"><br> <span id=

SublimeServer插件安装和使用

匿名 (未验证) 提交于 2019-12-03 00:40:02
sublime默认打开的html文件使用的是file协议。 SublimeServer可以为我们启动静态服务器,这样就可以发送ajax请求,当然也可以直接打开我们html文件。 sublime3的安装和基本使用 Content-type:application/octet-stream { "attempts": 5, "autorun": false, "defaultExtension": ".html", "interval": 500, "mimetypes": { "": "application/octet-stream", ".c": "text/plain", ".h": "text/plain", ".json": "application/json", // 增加支持json文件的打开方式 ".py": "text/plain" }, "port": 8080 //端口号 } { "default_browser": "chrome" } 在index.html文件中右击选择 view in SublimeServer 原文:https://www.cnblogs.com/yimiflh/p/9280655.html

足球登3出租从零开始搭建webpack+react开发环境的详细步骤

匿名 (未验证) 提交于 2019-12-03 00:32:02
足球登3出租Q 15701⒌⒌⒌7 ,环境主要依赖版本 webpack@4.8.1 webpack-cli@2.1.3 webpack-dev-server@3.1.4 react@16.3.2 babel-core@6.26.3 babel-preset-env@1.6.1 bable-preset-react@6.24.1 webpack安装及配置 1. 起步 新建项目目录,初始化npm,新建开发源目录 mkdir webpack-react && cd webpack-react npm init -y mkdir src 2.webpack-cli webpack从4.x版本开始,需要同时安装webpack,webpack-cli(此工具用于在命令行中运行webpack)。 npm install webpack webpack-cli --save-dev 3.wepback配置文件 在项目根目录新建webpack.config.js文件,此文件为webpack运行核心文件。 webpack.config.js 基本配置 // webpack.config.js const path = require('path'); module.exports = { entry: './src/index.js', // 入口文件 output: { //

Day022

匿名 (未验证) 提交于 2019-12-03 00:22:01
1题目:读取7个数(1―50)的整数值,每读取一个值,程序打印出该值个数的*。 [html] view plain copy scan new n1 scan n2 scan n3 scan n4 scan n5 scan n6 scan n7 scan i = 0 ;i < m 2.题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。 [html] view plain copy n 1234 a new i = 3 ;i > i = 0 ;i < 4 i = 0 ;i < a.length temp1 a temp2 a i = 0 ;i < a.length 3.题目:计算字符串中子串出现的次数 [html] view plain copy str ch str count 0 i = 0 ;i < ch.length 4.题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,将原有的数据和计算出的平均分数存放在磁盘文件"stud"中。 [html] view plain copy number new name new grade new sum new stud new br new

Web Worker

匿名 (未验证) 提交于 2019-12-03 00:22:01
Web Worker 1.特征 长时间运行,理想的运行启动性能,以及理想的内存消耗。 用于支持多线程编程,它在web程序中可并发执行多个脚本,彼此间相互独立。 分为两种线程 Dedicated Worker专用线程,Shared Worker共享线程。 2.简单示例 a.html <html> </html> worker.js <script> </script> 3.worker常用api worker.postMessage a.html: var worker=new Worker('worker.js); } worker.js } 4.worker执行上下文 worker有个自己单独的上下文,名叫WorkerGlobalScope;与window不同,因此不能访问 window及window相关api,比如dom; 常用api: self:相当于this close():关闭当前线程相当于terminate importScripts('*.js'):加载其他js文件 XMLHttpRequest,setTimeout/setInterval以及addEventListener/postMessage 文章来源: Web Worker

p2-2

匿名 (未验证) 提交于 2019-12-03 00:22:01
def download_html(self,html): print('>>>>>>>>>>>>>>>>>>>>>>>>>正在下载网页源码>>>>>>>>>>>>>>>>>>>>>>>>>') if not os.path.exists(self.spath+'/htmls'): print(self.base_path+'/htmls', '已经将html文件存在对应目录') os.system('mkdir -p %s' % self.spath+'/htmls') else: print(self.base_path+'/htmls', '已经存在此htmls目录') if html: with open('./%s' % (self.spath+'/htmls/'+self.spath+'.html'), 'w', encoding='utf-8') as f: f.write(html) print('===========================下载网页源码完毕===========================') def gs_runner(self,html): self.download_html(html) self.download_imgs(html) self.download_css(html) self.download_js(html)

ASP.NET + MVC5 入门完整教程二

匿名 (未验证) 提交于 2019-12-03 00:18:01
第一个MVC应用程序 1创建MVC项目 打开VS ,File--新建--项目,选择ASP Web项目,命名后确认。选择(Empty)空模板, 项目创建完成,会看到 解决方案管理器 窗口显示一些文件夹,如图,这是一个MVC的默认结构 2 添加第一个控制器 右键 解决方案中的“Controllers”文件夹,从弹出菜单选择 “添加”->“控制器”如上图所示; 添加后出现下图,单击“Add(添加)”按钮 这是打开 控制器对话框,命名为“Home Controller”,点击添加。 VS会在Controllers文件夹下创建一个新的C#文件,名称为"Home Controller.cs",这个类如下图所示; 3 渲染Web界面 创建web界面,在Index界面任意地方右键,从弹出菜单选择“Add View(添加视图)”,如下图: Index.cshtml 基本内容如下所示: 我们看到: @{ Layout = null ; } 这是一个将由Razor视图引擎进行解释的表达式,Razor引擎处理视图内容并生成发送给浏览器的HTML。这是一个简单的Razor表达式,他告诉Razor未选用布局,现在我们暂时忽略,以后在详细介绍。对该页面添加内容。 调试后出现界面如下 4 添加动态输出 Web应用程序平台的关键时构造并显示动态输出。在MVC中。控制器的工作时构造一些数据并传递给视图