python脚本提取url链接域名与端口

发布时间:2020-04-10编辑:脚本学堂
用于提取超链接url地址中域名与端口号的python脚本,python urllib模块的用法,python正则表达式获取url地址,需要的朋友参考下。

python/ target=_blank class=infotextkey>python脚本提取url超链接域名与端口

代码:
 

复制代码 代码示例:

#!/usr/bin/python
#

import urllib 
proto, rest = urllib.splittype("http://www.baidu.com/11/12.htm") 
host, rest = urllib.splithost(rest) 
print host 
host, port = urllib.splitport(host) 
if port is None: 
   port = 80 
print port

附,python正则表达式获取url地址

根据抓取网页的程序抓取所需的网页,然后再对该网页的源代码进行分析,获取指定标签的url。boss让我们先使用正则表达式和python去实现这个功能。

对正则表达式的学习,^这个符号表示某个字符必须在一个string的起始处,而$表示某个字符必须在一个String的结尾处。在弄的时候,以为^是表示String以^后面的字符为起始是一个无意义的符号。结果调试了半天没有弄明白。

而对于python对正则表达式的支持,包括p=re.compile(""), p.match(String), p.search(String), p.findall(string)。刚开始使用match,发现只返回一个值就停止了。这下遇到问题,我开始思考到底为什么match不能打印之后的内容。查文档,发现有个内容自己漏掉了,原来这个函数值要找到一个匹配项就停止了。只有findall才能够发现很多项。

调试的时候,发现了很多的问题。

一是不会调试,调试先用小数据调试,在变换数据类型调试,看看到底哪种数据产生什么输出,这样可定位问题产生的位置,分析该位置上的要素与其相邻要素产生了什么不互补连续的问题,便于修改要素,使程序互补连续;

二是自己看资料的时候不够仔细,没有带着问题去看文档,一旦带着问题去看文档了,就能够注意到很多的细节问题,避免很多时间的浪费。