【发布时间】:2015-04-04 10:02:27
【问题描述】:
我正在使用这个很棒的库 requests 来维护 python 2 和 3 的兼容性并简化我的应用程序请求管理。
我有一个案例,我需要解析一个 url 并替换它的一个参数。例如:
http://example.com?param1=a&token=TOKEN_TO_REPLACE¶m2=c
我想得到这个:
http://example.com?param1=a&token=NEW_TOKEN¶m2=c
有了urllib,我可以这样实现:
from urllib.parse import urlparse
from urllib.parse import parse_qs
from urllib.parse import urlencode
url = 'http://example.com?param1=a&token=TOKEN_TO_REPLACE¶m2=c'
o = urlparse(url)
query = parse_qs(o.query)
if query.get('token'):
query['token'] = ['NEW_TOKEN', ]
new_query = urlencode(query, doseq=True)
url.split('?')[0] + '?' + new_query
>>> http://example.com?param2=c¶m1=a&token=NEW_TOKEN
您如何使用requests 库实现相同的目标?
【问题讨论】:
标签: python python-3.x python-requests