urllib url解析学习
#!/usr/bin/env python
# encoding: utf-8
from urllib.parse import *
#urlparse:解析url分段
#urlsplit:类似urlparse,不再单独解析params部分
#urlunsplit:后面必须1个列表,里面5个参数
#urljoin:字符串的拼接
#parse_qs:字符串参数转字典参数
#parse_qsl:字符串参数转列表元组
#urlencode:GET请求参数逇编码
#quote:url带中文的时候可用来编码
#unquote:用来解码
URL="http://www.baidu.com/s?wd=falsk%20%E6%95%B0%E6%8D%AE%E6%93%8D%E4%BD%9C&rsv_spt=1&rsv_iqid=0x869d926300006682&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=baiduhome_pg&rsv_enter=0&oq=kwargs&inputT=6623&rsv_t=121540vUUWCKfciS1Ir0wlIBRBImaOVodO0fliZnJ%2BDCLWcUQ%2BHb5lhrg204XikhTHMY&rsv_pq=ef5d22fb0001200c&sug=python%2520utf-8&rsv_sug3=125&rsv_sug1=36&rsv_sug7=100&rsv_sug2=0&rsv_sug4=7658" #scheme表示http还是https的协议,如果url不带协议根据scheme的值加上 result1=urlparse(URL,scheme='',allow_fragments=True) print(urlunsplit([result1.scheme,result1.netloc,"","",""])) # ParseResult(scheme='http', netloc='www.baidu.com', path='/s', params='', query='wd=falsk%20%E6%95%B0%E6%8D%AE%E6%93%8D%E4%BD%9C&rsv_spt=1&rsv_iqid=0x869d926300006682&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=baiduhome_pg&rsv_enter=0&oq=kwargs&inputT=6623&rsv_t=121540vUUWCKfciS1Ir0wlIBRBImaOVodO0fliZnJ%2BDCLWcUQ%2BHb5lhrg204XikhTHMY&rsv_pq=ef5d22fb0001200c&sug=python%2520utf-8&rsv_sug3=125&rsv_sug1=36&rsv_sug7=100&rsv_sug2=0&rsv_sug4=7658', fragment='')
#scheme表示http还是https的协议,如果url不带协议根据scheme的值加上
result1=urlparse(URL,scheme='',allow_fragments=True) print(urlunsplit([result1.scheme,result1.netloc,"","",""]))
# ParseResult(scheme='http', netloc='www.baidu.com', path='/s', params='', query='wd=falsk%20%E6%95%B0%E6%8D%AE%E6%93%8D%E4%BD%9C&rsv_spt=1&rsv_iqid=0x869d926300006682&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=baiduhome_pg&rsv_enter=0&oq=kwargs&inputT=6623&rsv_t=121540vUUWCKfciS1Ir0wlIBRBImaOVodO0fliZnJ%2BDCLWcUQ%2BHb5lhrg204XikhTHMY&rsv_pq=ef5d22fb0001200c&sug=python%2520utf-8&rsv_sug3=125&rsv_sug1=36&rsv_sug7=100&rsv_sug2=0&rsv_sug4=7658', fragment='')
urllib url解析学习的更多相关文章
- Android] Android XML解析学习——方式比较
[Android] Android XML解析学习——方式比较 (ZT) 分类: 嵌入式 (From:http://blog.csdn.net/ichliebephone/article/deta ...
- 百度url解析Joe.Smith整理大全
百度url解析Joe.Smith整理大全 百度url解析Joe.Smith整理大全...1 本文链接:http://blog.csdn.net/qq_26816591/article/details/ ...
- 「Python 编程」编码实现网络请求库中的 URL 解析器
摘要:怎么写出更短的代码并不是这次要讨论的话题.今天我们来研究一下:运行代码的计算机是如何找到目标服务器的? 相信各位 Python 开发者都用过 Requests 库,有些朋友还用过 WebSock ...
- 简单的URL解析
简单的URL解析,直接举例说明了 function getUrl(){ //如果存在则取到来后面的参数,注意,?不需要取出,substring从1开始,否则取""; var qs ...
- ThinkPHP中URL解析原理,以及URL路由使用教程!
几个概念: THINKPHP 是一个MVC框架,使用PATHINFO解析出分组名,模块名,方法名,以及参数. PATHINFO:就是 http://localhost/index.php/Home/I ...
- Django的url解析
Django中采用正则表达式来匹配所请求的url,这个叫做URLconf,作为MVC中的C(控制器), 这样再调用相应的试图,达到控制器控制试图的显示的效果. 看一下Django的url解析过程 第一 ...
- jsp页面获取参数的方法(url解析、el表达式赋值、session取值)【原创】
最近使用myEclispse做网站,使用jsp+js+css做页面,网站中常用到从列表进入详情页面的跳转,下面对详情页面的值填充方式做一个简单总结: 1.url中使用request获取参数 jsp上方 ...
- url模块学习小结
url模块是node自带的功能强大的url解析库. var url = require("url"); var str = "http://192.168.0.109:8 ...
- 用正则把url解析为对象
用正则把url解析为对象 <!DOCTYPE html><html><head><meta charset="utf-8">< ...
随机推荐
- 公布一些常用的WebServices
天气预报Web服务,数据来源于中国气象局 Endpoint Disco WSDL IP地址来源搜索 WEB 服务(是目前最完整的IP地址数据) Endpoint Disco WSD ...
- Entity FrameWork和Dapper的使用
EF是微软系列下的更正苗红的重量级的ORM框架,功能强大,操作数据库的时候几乎不用写sql,可以像写C#代码一样操作数据库,尤其支持多表关联操作的时候极为方便,但是生成的sql语句性能很差,实在不敢恭 ...
- nodejs安装&bower 安装
1.进入官网下载:https://nodejs.org/en/ 2.直接进行安装,可以将安装路径设置为:D:\nodejs 3.进入node.js command prompt 命令窗口 4.检测是否 ...
- javaScript对SEO的影响
在两大搜索引擎阵营中,大量实践证明百度对JAVASCRIP的处理很不理想而GOOGLE的处理要好一些. 网页中出现大量的JavaScript会给搜索引擎爬行增加难度.其主要影响有以下几点: 1.干 ...
- 一些 ssh 小技巧
本文来自网易云社区. 作者:沈高峰 ssh 经常需要使用的,每次使用都 ssh abc@XXX.def.com -p 12138 -i ~/.ssh/id_rsa 来一遍显然太麻烦了,下面分享一点 ...
- 超轻量级异步JS框架,别再让嵌套影响我们的优雅代码!
1.异步JS的重要性 随着Web平台地位的提升,霸占着浏览器的JavaScript语言也成为了世界上最流行的语言之一,甚至通过Node.js进入了服务器编程领域.JavaScript的一个重要特性便是 ...
- C# 6.0/7.0 的新特性
转眼C#语言都已经迭代到7.0版本了,很多小伙伴都已经把C# 7.0 的新特性应用到代码中了,想想自己连6.0的新特性都还很少使用,今天特意搜集了一下6.0和7.0的一些新特性,记录一下,方便查阅. ...
- 《Cracking the Coding Interview》——第16章:线程与锁——题目3
2014-04-27 19:26 题目:哲学家吃饭问题,死锁问题经典模型(专门用来黑哲学家的?). 解法:死锁四条件:1. 资源互斥.2. 请求保持.3. 非抢占.4. 循环等待.所以,某砖家拿起一只 ...
- 《Cracking the Coding Interview》——第11章:排序和搜索——题目7
2014-03-21 22:05 题目:给你N个盒子堆成一座塔,要求下面盒子的长和宽都要严格大于上面的.问最多能堆多少个盒子? 解法1:O(n^2)的动态规划解决.其实是最长递增子序列问题,所以也可以 ...
- 《Cracking the Coding Interview》——第3章:栈和队列——题目2
2014-03-18 05:08 题目:实现一个栈,除了能进行push和pop之外,还能在O(1)时间内返回栈中最小的元素. 解法:用另一个“最小栈”存放最小的元素,每当有不小于当前最小值的元素进栈时 ...