response

python爬虫

廉价感情. 提交于 2020-03-30 20:54:21
   一、python模块 1、urllib.request常规使用 import urllib.request #1、指定URL url = 'http://www.baidu.com' #2、发起请求:urlopen可以根据指定的url发起请求,且返回一个响应对象 response = urllib.request.urlopen(url=url) #3、获取页面数据:read函数返回的就是响应对象中存储的页面数据(byte) response_text = response.read() #4、持久化存储 with open('./baidu.html','wb') as f: f.write(response_text) print('写入成功') urllib.request urllib.request处理url中文 import urllib.request import urllib.parse #1、指定URL # url = 'https://tieba.baidu.com/f?ie=utf-8&kw=你好&fr=search' url = 'https://tieba.baidu.com/f?ie=utf-8&kw=%s&fr=search' #url不可以存在非ascii编码的字符数据 wd = urllib.parse.quote("你好") new

axios 二次封装

喜你入骨 提交于 2020-03-30 15:49:54
//对axios进行二次封装 import axios from 'axios'; import qs from 'qs'; // 根据环境变量区分接口的默认地址 switch(process.env.NODE_ENV){ case "production": axios.defaults.baseURL = "http://生产环境地址"; break; case "test": axios.defaults.baseURL = "http://测试环境地址"; break; default: axios.defaults.baseURL = "http://开发环境地址" } //设置超时时间和跨域是否允许携带凭证 axios.defaults.time = 10000; axios.defaults.withCreadentials = true ; //设置 请求传递数据的格式 axios.defaults.header['Content-Type'] = 'application/x-www-form-urlencoded'; axios.defaults.transformRequest = data => qs.stringify(data); //设置请求拦截器 //客户端发送请求 - > [请求拦截器] - > 服务器 //TOKEN校验 (JWT)

NodeJS(1)

佐手、 提交于 2020-03-30 05:00:07
1、综述 1.1 Node.js特性 Node.js库的异步和事件驱动的API全部都是异步就是非阻塞。它主要是指基于Node.js的服务器不会等待API返回的数据。服务器移动到下一个API调用,Node.js发生的事件通知机制后有助于服务器获得从之前的API调用的响应。 非常快的内置谷歌Chrome的V8 JavaScript引擎,Node.js库代码执行是非常快的。 单线程但高度可扩展 - Node.js使用具有循环事件单线程模型。事件机制有助于服务器在一个非阻塞的方式响应并使得服务器高度可扩展,而不是创建线程限制来处理请求的传统服务器。Node.js使用单线程的程序,但可以提供比传统的服务器(比如Apache HTTP服务器)的请求服务数量要大得多。 没有缓冲 - Node.js的应用从来不使用缓冲任何数据。这些应用只是输出数据在块中。 许可证协议 - Node.js 在MIT协议 下发布 1.2 在哪里可以使用Node.js? 以下是Node.js证明自己完美的技术的合作伙伴的领域。 I/O 绑定应用程序 数据流应用 数据密集型实时应用(DIRT) JSON API的应用程序 单页面应用 1.3创建HelloWorld程序 Node.js应用程序由以下三个重要部分组成: 导入所需模块: 使用require指令来加载javascript模块 创建一个服务器:

原生nodejs 学习笔记1

烈酒焚心 提交于 2020-03-30 04:38:59
网上许多nodejs教程或书藉都是教你调用第三方模块来编写nodejs应用的,虽然这是非常便捷的,但是封装太厚,你基本一点东西还是没有学到。人家的模块,人家想怎么改就行,可以下一版本就改了接口,你的应用就完蛋了。比如说google,他就爱干这种事情。因此我们还得老老实实学习底层API吧。 本节首先教大家跑起一个页面吧。 我在以前就写一篇相关的, node.js 一个简单的页面输出 ,大家可以先预习一下。 一般来说,大家都是从这样一个例子入门 var http = require("http"); http.createServer(function(request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); response.write("Hello node.js"); response.end(); }).listen(8888); 上面脚本写在一个app.js上面,然后打开控制台,定位于它所在目录,输入node app,再打开某一浏览器,输入http://localhost:8888/就看出效果。 分析上面脚本: 引入依赖,这是前端AMD规范未流行前, 非常神奇的东西。不过一个项目这么大,肯定要分成N个目录N个文件,各人负责一部分,减少合并冲突的风险 require("http"

(8)Django框架学习-python模拟Django框架

廉价感情. 提交于 2020-03-30 04:28:44
原贴来源 http://wiki.woodpecker.org.cn/moin/ObpLovelyPython/AbtWebModules python实现web服务器 web开发首先要有web服务器才行。比如apache,但是在开发阶段最好有一个简单方便的开发服务器, 容易重启进行调试,等开发调试完毕后,再将代码部署到成熟稳定高效的web服务器。 # -*- coding: utf-8 -*- from wsgiref import simple_server # 定义一个输出 hello world 和环境变量的简单web应用程序 def hello_app(environ, start_response) : # 输出 http 头,text/plain 表示是纯文本 start_response( '200 OK' , [( 'Content-type' , 'text/plain' )]) # 准备输出的内容 content = [] content.append( 'Hello world' ) for key, value in environ.items() : content.append( '%s : %s' % (key, value)) # 输出,根据 wsgi 协议,返回的需要是一个迭代器,返回一个 list 就可以 return [ '\n' .join

Node.js 函数

久未见 提交于 2020-03-30 04:27:17
在JavaScript中,一个函数可以作为另一个函数接收一个参数。我们可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数。 Node.js中函数的使用与Javascript类似,举例来说,你可以这样做: function say(word) { console.log(word); } function execute(someFunction, value) { someFunction(value); } execute(say, "Hello"); 以上代码中,我们把 say 函数作为execute函数的第一个变量进行了传递。这里返回的不是 say 的返回值,而是 say 本身! 这样一来, say 就变成了execute 中的本地变量 someFunction ,execute可以通过调用 someFunction() (带括号的形式)来使用 say 函数。 当然,因为 say 有一个变量, execute 在调用 someFunction 时可以传递这样一个变量。 匿名函数 我们可以把一个函数作为变量传递。但是我们不一定要绕这个"先定义,再传递"的圈子,我们可以直接在另一个函数的括号中定义和传递这个函数: function execute(someFunction, value) { someFunction(value); } execute

Node.js 函数

微笑、不失礼 提交于 2020-03-30 04:24:21
在JavaScript中,一个函数可以作为另一个函数接收一个参数。我们可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数。 Node.js中函数的使用与Javascript类似,举例来说,你可以这样做: function say(word) { console.log(word); } function execute(someFunction, value) { someFunction(value); } execute(say, "Hello"); 以上代码中,我们把 say 函数作为execute函数的第一个变量进行了传递。这里返回的不是 say 的返回值,而是 say 本身! 这样一来, say 就变成了execute 中的本地变量 someFunction ,execute可以通过调用 someFunction() (带括号的形式)来使用 say 函数。 当然,因为 say 有一个变量, execute 在调用 someFunction 时可以传递这样一个变量。 匿名函数 我们可以把一个函数作为变量传递。但是我们不一定要绕这个"先定义,再传递"的圈子,我们可以直接在另一个函数的括号中定义和传递这个函数: function execute(someFunction, value) { someFunction(value); } execute

Node js函数

删除回忆录丶 提交于 2020-03-30 04:22:56
/* 在JavaScript中,一个函数可以作为另一个函数的参数,函数名可做变量名。可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数。 把函数做参数一般是主要用于回调函数,即被调用的方法执行完后调用作为参数的方法 Node.js中函数的使用与Javascript类似 例 */ //===============================以下代码为main.js文件中内容========================================== function say(word) { console.log(word); } function execute(someFunction, value) { someFunction(value); } execute(say, "Hello"); //===============================以上代码为main.js文件中内容========================================== /* 以上代码,把 say 函数作为execute函数的第一个变量进行了传递。这里传递的不是 say 的返回值,而是 say 本身 这样一来, say 就变成了execute 中的本地变量 someFunction ,execute可以通过调用 someFunction()

Nodejs入门

六眼飞鱼酱① 提交于 2020-03-30 04:22:19
----------------------------Nodejs是个什么东西 javascript是一门完整的语言,可以运行在不同的上下文环境中. 我们平时都在浏览器中运行javascript代码,浏览器为js提 提供了一个上下文,它定义了使用JavaScript可以做什么 Node.js事实上就是另外一种上下文,它允许在后端(脱离浏览器环境)运行JavaScript代码。 要实现在后台运行JavaScript代码,代码需要先被解释然后正确的执行。Node.js的原理正是如此,它使用了Google的V8虚拟机(Google的Chrome浏览器使用的JavaScript执行环境),来解释和执行JavaScript代码。 ---------------------------------技巧 node安装以后可以用 $ node app 命令执行。 如果直接用输入node回车,会进入持续的node环境,可运行javascript代码,按两次ctrl+c退出 前几天摸索的mongodb也有这个功能,因为mongodb的shell是基于javascript的 两者的连续输入模式都可以输入,运行javascript代码。 node的模块只能加载一次, quire导入模块的时候,会先从require.cache 中检查模块是否已经加载,如果没有加载,才会从硬盘中查找模块脚本并加载。

Servlet_3

谁都会走 提交于 2020-03-29 21:19:09
动态web项目 采用动态Web项目-Dynamic Web Project的方式把 Java project+独立Tomcat的Hello Servlet 重新做一遍。 此时好像用不到server.xml文件了 跳转 在Servlet中进行服务端跳转的方式: request.getRequestDispatcher("success.html").forward(request, response); 服务端跳转可以看到浏览器的地址依然是/login 路径,并不会变成success.html 在Servlet中进行客户端跳转的方式: response.sendRedirect("fail.html"); 可以观察到,浏览器地址发生了变化 编码 设置接收编码 request.setCharacterEncoding("UTF-8"); 设置响应编码有两种方式 response.setContentType("text/html; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); 这两种方式都需要在response.getWriter调用之前执行才能生效 他们的区别在于 response.setContentType("text/html; charset=UTF-8"); 不仅发送到浏览器的内容会使用UTF-8编码