从Python中删除URL中的utm_ *参数

前端之家收集整理的这篇文章主要介绍了从Python中删除URL中的utm_ *参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在尝试从URL列表中删除所有utm_ *参数.
我发现的最接近的是: https://gist.github.com/626834.

有任何想法吗?

解决方法

它有点长,但使用url *模块,并避免重复.
from urllib import urlencode
from urlparse import urlparse,parse_qs,urlunparse

url = 'http://whatever.com/somepage?utm_one=3&something=4&utm_two=5&utm_blank&something_else'

parsed = urlparse(url)
qd = parse_qs(parsed.query,keep_blank_values=True)
filtered = dict( (k,v) for k,v in qd.iteritems() if not k.startswith('utm_'))
newurl = urlunparse([
    parsed.scheme,parsed.netloc,parsed.path,parsed.params,urlencode(filtered,doseq=True),# query string
    parsed.fragment
])

print newurl
# 'http://whatever.com/somepage?something=4&something_else'
原文链接:https://www.f2er.com/python/185577.html

猜你在找的Python相关文章