python学习笔记(19-20)
2016-04-22 18:45
429 查看
十九、WEB设计模块urlparse
>>> urlparse.urlparse('http://www.baidu.com:8080/dcoc/123.php;aa=123?sdf#dff#dfr')
('http', 'www.baidu.com:8080', '/dcoc/123.php', 'aa=123', 'sdf', 'dff#dfr')urlunparse组装被分割的表列。urljoin是组装路径,如:
>>> urlparse.urljoin('http://www.baidu.com/doc/123.htm','/dfg/456.asp')
'http://www.baidu.com/dfg/456.asp'
>>> urlparse.urljoin('http://www.baidu.com/doc/123.htm','dfg/456.asp')
'http://www.baidu.com/doc/dfg/456.asp'
模块urllib
urlopen(urlstr,postQueryData=None)可以读取网页内容或一个本地文件,返回一个文件句柄,通过这个文件句柄来读取数据。
注意这个URL必须是带有协议的,比如www.baidu.com就会出现IOError的异常,http://www.baidu.com就正确了。
后面的参数是提供给动态页面的post参数的。如果要加get参数,直接在网址后面写上就OK了。
fp=urlopen('http://www.baidu.com');可以使用read,readline,readlines,close,fileno,info,geturl来进行操作。
info提供一个MIME表头说明,提供给其他外部程序辨别。
geturl获得路径,主要是防止重定向的,不过如果是省略具体文件名的,显示依然省略。如:fp.geturl()得到'http://www.baidu.com' 而没有具体的文件名。urlretrieve(urlstr,localfile=None,dowloadStatusHook=None)将文件下载到本地。
第一个参数是路径,第二个参数是存放位置,不填则在临时目录(temp)生成临时文件,第二个参数是个函数,每下载一个数据块就会调用。
返回2个元素,一个是本地文件名,第二个是MIME表头。
最好在之前调用urlcleanup清除缓存。quote转换特殊字符为%X形式,如 ~ : + ?等,不转换/
quote_plus同上,转换/ 同时空格转换为+
unquote unquote_plus功能相反。书上提供了一个扒网页的例子,可以参考下。P464用python实现的CGI程序在网页上和PHP等基本一致,略。
用python建立web服务器,略。与web相关的模块,P494------------------------------------------------------------------------
第二十章 扩展以前看书的时候就常看到说,python最强的地方是它被成为胶水语言,一直看到最后一章才看到胶水的实现,不过感觉不是传说中的那么方便。
>>> urlparse.urlparse('http://www.baidu.com:8080/dcoc/123.php;aa=123?sdf#dff#dfr')
('http', 'www.baidu.com:8080', '/dcoc/123.php', 'aa=123', 'sdf', 'dff#dfr')urlunparse组装被分割的表列。urljoin是组装路径,如:
>>> urlparse.urljoin('http://www.baidu.com/doc/123.htm','/dfg/456.asp')
'http://www.baidu.com/dfg/456.asp'
>>> urlparse.urljoin('http://www.baidu.com/doc/123.htm','dfg/456.asp')
'http://www.baidu.com/doc/dfg/456.asp'
模块urllib
urlopen(urlstr,postQueryData=None)可以读取网页内容或一个本地文件,返回一个文件句柄,通过这个文件句柄来读取数据。
注意这个URL必须是带有协议的,比如www.baidu.com就会出现IOError的异常,http://www.baidu.com就正确了。
后面的参数是提供给动态页面的post参数的。如果要加get参数,直接在网址后面写上就OK了。
fp=urlopen('http://www.baidu.com');可以使用read,readline,readlines,close,fileno,info,geturl来进行操作。
info提供一个MIME表头说明,提供给其他外部程序辨别。
geturl获得路径,主要是防止重定向的,不过如果是省略具体文件名的,显示依然省略。如:fp.geturl()得到'http://www.baidu.com' 而没有具体的文件名。urlretrieve(urlstr,localfile=None,dowloadStatusHook=None)将文件下载到本地。
第一个参数是路径,第二个参数是存放位置,不填则在临时目录(temp)生成临时文件,第二个参数是个函数,每下载一个数据块就会调用。
返回2个元素,一个是本地文件名,第二个是MIME表头。
最好在之前调用urlcleanup清除缓存。quote转换特殊字符为%X形式,如 ~ : + ?等,不转换/
quote_plus同上,转换/ 同时空格转换为+
unquote unquote_plus功能相反。书上提供了一个扒网页的例子,可以参考下。P464用python实现的CGI程序在网页上和PHP等基本一致,略。
用python建立web服务器,略。与web相关的模块,P494------------------------------------------------------------------------
第二十章 扩展以前看书的时候就常看到说,python最强的地方是它被成为胶水语言,一直看到最后一章才看到胶水的实现,不过感觉不是传说中的那么方便。
相关文章推荐
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析
- Python将excel导入到mysql中
- Python在CAM软件Genesis2000中的应用
- 使用Shiboken为C++和Qt库创建Python绑定
- FREEBASIC 编译可被python调用的dll函数示例
- Python 七步捉虫法