url

团队项目总结

你。 提交于 2020-03-24 10:55:50
开发内容: 首先我们选择使用Python脚本语言开发这个项目 代码:1.使用python的request库先获取网页内容下来(目标网址首页 url: https://movie.douban.com/top250) 2.解析html文件,提取出我们要提取的信息 import os import requests from bs4 import BeautifulSoup from requests.exceptions import RequestException """ Author: Damon 功能: 爬取豆瓣网Top250电影信息保存到本地 """ # 目标网址 URL = "https://movie.douban.com/top250?start={}" # 按照爬取顺序保存每个电影的网址 entity_url = [] def save_data(result): """ 保存爬取信息到本地 :return: None """ f = open('movice.txt', "a", encoding="utf8") f.write("========================================================================================================\n") f.write(

js获取页面url

血红的双手。 提交于 2020-03-24 07:55:02
设置或获取对象指定的文件名或路径。 window.location.pathname 例:http://localhost:8086/topic/index?topicId=361 alert(window.location.pathname); 则输出:/topic/index 设置或获取整个 URL 为字符串。 window.location.href 例:http://localhost:8086/topic/index?topicId=361 alert(window.location.href); 则输出:http://localhost:8086/topic/index?topicId=361 设置或获取与 URL 关联的端口号码。 window.location.port 例:http://localhost:8086/topic/index?topicId=361 alert(window.location.port); 则输出:8086 设置或获取 URL 的协议部分。 window.location.protocol 例:http://localhost:8086/topic/index?topicId=361 alert(window.location.protocol); 则输出:http: 设置或获取 href 属性中在井号“#”后面的分段。 window

ES6十大常用特性

廉价感情. 提交于 2020-03-24 06:45:14
平时项目中用到不少es6的语法,然后来全面了解一下。看到一篇博客总结的不错。特来分享 https://blog.csdn.net/bingtangcsnd/article/details/63684142 以下是ES6排名前十的最佳特性列表(排名不分先后): Default Parameters(默认参数) in ES6 Template Literals (模板文本)in ES6 Multi-line Strings (多行字符串)in ES6 Destructuring Assignment (解构赋值)in ES6 Enhanced Object Literals (增强的对象文本)in ES6 Arrow Functions (箭头函数)in ES6 Promises in ES6 Block-Scoped Constructs Let and Const(块作用域构造Let and Const) Classes(类) in ES6 Modules(模块) in ES6 【备注 】这里只列出了10条比较常用的特性。并不是所有的浏览器都支持ES6模块,所以你需要使用一些像jspm去支持ES6模块。 1.Default Parameters(默认参数) ES5: var link = function (height, color, url) { var height =

Android中xml文件的解析

时光怂恿深爱的人放手 提交于 2020-03-24 06:05:16
需要有一个解析工厂,SAXParserFactory,通过解析工厂来获得解析器XMLReader,然后给解析器配置ContentHandler,最后通过parse来启动解析,其中有以下主要的方法: startDocument:当遇到文档的时候就触发这个事件 调用这个方法 可以在其中做些预处理工作。 startElement: (String namespaceURI,String localName,String qName,Attributes atts)当遇开始标签的时候就会触发这个方法。 endElement(String uri,String localName,String name):当遇到结束标签时触发这个事件,调用此法可以做些善后工作。 charachers(char [] ch,int start,int length):当遇到xml内容时触发这个方法,用new String(ch,start,length)可以接受内容。 下面通过一个例子来说一下,之前做的版本更新的时候用过的,通过从服务器上获取当前版本信息文件,解析后和当前软件版本号比较来判断是否有新版本发布,这里只用到下载xml文件并解析。 下载部分代码: 1 public class HttpDownloader { 2 private URL url = null; 3 /** 4 * 根据URL下载文件

谷歌浏览器chrome console 发送POST/GET请求

孤者浪人 提交于 2020-03-23 19:51:59
打开chrome 开发者工具 登录你访问的系统,复制你后台系统提供的url 在Console中输入如下代码 可发送http post/get请求 POST请求: //方法一: var url = "/dict/test"; var params = {advertiserUid: 1232131, advertiserWeiboNickname: "18"}; var xhr = new XMLHttpRequest(); xhr.open("POST", url, true); xhr.setRequestHeader("Content-Type", "application/json"); xhr.onload = function (e) { if (xhr.readyState === 4) { if (xhr.status === 200) { console.log(xhr.responseText); } else { console.error(xhr.statusText); } } }; xhr.onerror = function (e) { console.error(xhr.statusText); }; xhr.send(JSON.stringify(params)); //方法二: var url = "/dict/test"; var params

快速获取URL中的host-兼容ipv6

℡╲_俬逩灬. 提交于 2020-03-23 18:10:17
3 月,跳不动了?>>> 0x01背景 ipv4即将耗尽, ipv6已然到来, 很多公司应该都在做ipv6的适配工作或者已经做了。最近在开发的时候遇到了一个url解析的问题, 需要考虑到ipv6地址的url, 于是简单梳理如下。所有场景主要有以下几类: http://host/ http://host:port/ http://ipv4 http://ipv4:port/ http://ipv6 http://ipv6:port 0x02一句话解决方案 1.如果python的版本>2.7,且ipv6的url符合RFC3986规范,则直接使用urlparse解析即可 2.如果python版本低于2.7或者包含ipv6的url不符合规范,则不能使用urlparse进行解析hostname,需要自定义一个方法实现,参考如下 import socket from urlparse import urlparse def is_ipv6(ip): try: socket.inet_pton(socket.AF_INET6, ip) except socket.error: return False return True def extract_host_from_url(url): host = urlparse(url).netloc print 'netloc = ', host if

urllib运用(1)

筅森魡賤 提交于 2020-03-23 14:31:55
# 1.导入urllib中的request # 2.定义爬取的url(统一资源定位符) # 3.定义一个请求对象request # request的参数有url:访问的网址;data:发起请求时带的数据请求方式为post; # headers:包括发送HTTP报文的键值对(例如user-agent请求头)可以利用random中的choice方法随机一个user-agent # 4.定义一个响应对象接收访问的网页信息(此时返回的是一个response对象) # 5.使用read()方法和decode()方法对返回的数据进行处理返回成utf-8的格式 from urllib import request url_1 = 'https://www.baidu.com/' header = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0' } req = request.Request(url=url_1,headers=header) response = request.urlopen(req).read().decode('utf-8') print(response) 来源: https://www.cnblogs.com

HTTP状态码

泪湿孤枕 提交于 2020-03-23 13:34:44
常见的http状态码 100:继续 客户端应当继续发送请求。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。 101: 转换协议 在发送完这个响应最后的空行后,服务器将会切换到在Upgrade 消息头中定义的那些协议。只有在切换新的协议更有好处的时候才应该采取类似措施。 102:继续处理 由WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执行。 200:请求成功 处理方式:获得响应的内容,进行处理(重要) 201:请求完成,结果是创建了新资源。新创建资源的URI可在响应的实体中得到 处理方式:爬虫中不会遇到 202:请求被接受,但处理尚未完成 处理方式:阻塞等待 204:服务器端已经实现了请求,但是没有返回新的信 息。如果客户是用户代理,则无须为此更新自身的文档视图。 处理方式:丢弃 300:该状态码不被HTTP/1.0的应用程序直接使用, 只是作为3XX类型回应的默认解释。存在多个可用的被请求资源。 处理方式:若程序中能够处理,则进行进一步处理,如果程序中不能处理,则丢弃 301:请求到的资源都会分配一个永久的URL,这样就可以在将来通过该URL来访问此资源 处理方式:重定向到分配的URL(永久重定向,重要) 302:请求到的资源在一个不同的URL处临时保存 处理方式:重定向到临时的URL(临时重定向,重要) 304:请求的资源未更新 处理方式

vue axios封装以及API统一管理

杀马特。学长 韩版系。学妹 提交于 2020-03-23 10:57:58
在vue项目中,每次和后台交互的时候,经常用到的就是axios请求数据,它是基于promise的http库,可运行在浏览器端和node.js中。当项目越来越大的时候,接口的请求也会越来越多,怎么去管理这些接口?多人合作怎么处理?只有合理的规划,才能方便往后的维护以及修改, 安装 安装axios依赖包 cnpm install axios --save 引入 一般会我会在项目src中新建一个untils目录,其中base用于管理接口域名,http处理请求拦截和响应拦截,user.js负责接口文件(接口文件可以自己新建一个文件夹,然后放对应的接口文件) 1.在http.js文件中,用于处理axios中对请求拦截和响应拦截做处理,token处理,并引入element-ui加载动画。 import axios from 'axios' import { Loading, Message } from 'element-ui' import router from '../router/index.js' let loading function startLoading() { loading = Loading.service({ lock: true, text: '加载中....', background: 'rgba(0, 0, 0, 0.7)' }) } function

vue -- axios封装和api接口管理

℡╲_俬逩灬. 提交于 2020-03-23 10:34:39
axios封装【https://juejin.im/post/5b55c118f265da0f6f1aa354】 在vue项目中,一般和后台数据交互获取,使用的是axios库,它是基于promise的http库,可运行到浏览器和node.js中。 axios的特性: 拦截请求和响应; 取消请求; 转换JSON 客户端防御XSRF等 安装: npm install axios; //安装axios 引入:【可以在项目的src中,新建一个request文件夹,然后里面新建两个文件,http.js和api.js。http.js文件用来封装axios,api.js文件用来统一管理我们的接口。】 //在http.js中引入axios import axios from 'axios'; //引入axios import QS from 'qs'; //引入qs模块,用来序列化post类型的数据 环境的切换:【项目中有开发环境、测试环境和生产环境,我们通过node的环境变量来匹配我们的默认接口url前缀。】 //环境的切换 if(process.env.NODE_ENV == 'development'){ axios.defaults.baseURL = 'https://www.baidu.com';//开发地址 } else if (process.env.NODE_ENV ==