首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修复损坏的urls

修复损坏的urls
EN

Stack Overflow用户
提问于 2009-09-17 02:02:06
回答 1查看 1.4K关注 0票数 0

有没有人知道修复“坏掉的”urls的库。当我尝试打开一个url时,比如

代码语言:javascript
复制
http://www.domain.com/../page.html
http://www.domain.com//page.html
http://www.domain.com/page.html#stuff

urllib2.urlopen会阻塞并给我一个HTTPError回溯。有没有人知道可以修复这类问题的库?

EN

回答 1

Stack Overflow用户

发布于 2009-09-17 03:10:32

比如……怎么样?

代码语言:javascript
复制
import re
import urlparse

urls = '''
http://www.domain.com/../page.html
http://www.domain.com//page.html
http://www.domain.com/page.html#stuff
'''.split()

def main():
  for u in urls:
    pieces = list(urlparse.urlparse(u))
    pieces[2] = re.sub(r'^[./]*', '/', pieces[2])
    pieces[-1] = ''
    print urlparse.urlunparse(pieces)

main()

正如您所希望的,它确实会发出:

代码语言:javascript
复制
http://www.domain.com/page.html
http://www.domain.com/page.html
http://www.domain.com/page.html

如果我理解正确的话,它看起来与你的需求大致相符。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1436382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档