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">< ...
随机推荐
- poj 3111 卖珠宝问题 最大化平均值
题意:有N件分别价值v重量w的珠宝,希望保留k件使得 s=v的和/w的和最大 思路:找到贡献最大的 设当前的s为mid(x) 那么贡献就是 v-w*x 排序 ,取前k个 bool operator&l ...
- 22、(转载)jQueryMobile 知识点总结
本文转自:http://www.cnblogs.com/jxyedu HTML5技术生态介绍 H5的现状与未来 HTML5是用于取代1999年所制定的 HTML 4.01 和 XHTML 1.0 标准 ...
- 三 APPIUM GUI讲解(Windows版)
本文本转自:http://www.cnblogs.com/sundalian/p/5629386.html APPIUM GUI讲解(Windows版) Windows版本的APPIUM GUI有 ...
- cloud.cfg_for_ubuntu
user: default disable_root: false preserve_hostname: false cloud_init_modules: - bootcmd - resizefs ...
- Linux下vsftp匿名用户配置
Linux下vsftp匿名用户上传和下载的配置 配置要注意三部分,请一一仔细对照: 1.vsftpd.conf文件的配置(vi /etc/vsftpd/vsftpd.conf) #允许匿名用户登录FT ...
- JavaScript之实现单选复选、菜单以及返回顶部实例
1.单选.复选以及反选实例 其实主要是利用for循环提取标签,然后更改checked属性值实现的 <!DOCTYPE html> <html lang="en"& ...
- redis的socket event loop
很早之前就因为nosql就听说了redis,直到去年才真正去了解,只能说相见恨晚. 因为数据库相关,我以为这应该是个庞然大物,万万没想到,源码不到2M,所以,我不知道该说啥了... 还是来点靠谱的: ...
- 第九章 广播和本地组播(IGMP和MLD)
距离项目开启已经过去了一段时间,这段时间内自己学习的内容也算挺多的,但是也较容易遗忘,之后应该在空余的时间内多翻翻博客,更加清楚传统计算机网络的运作. 由于51要出去玩,更要好好利用好最近的时间.完成 ...
- jQuery选择器之全选择器(*选择器)
在css中,经常会在第一行写下这样一段样式: * { margin:; padding:; } 通配符*意味着给所有的元素设置默认的边距.jQuery中我们也可以通过传递*选择器来选中文档页面中的元素 ...
- Block层也是有IO的优先级的
---恢复内容开始--- 今天查看iotop的原理,竟然发现了IO优先级一说,IO是block层cfs调度器中的概念 block层也有一个类似于CPU的调度算法 对进程分成三个级别:RT,BE,IDL ...