相关疑难解决方法(0)

在Python中将params添加到给定的URL

假设我获得了一个URL.
它可能已经有GET参数(例如http://example.com/search?q=question)或者可能没有(例如http://example.com/).

现在我需要为它添加一些参数{'lang':'en','tag':'python'}.在第一种情况下,我将拥有http://example.com/search?q=question&lang=en&tag=python和在第二种情况下 - http://example.com/search?lang=en&tag=python.

有没有标准的方法来做到这一点?

python url

106
推荐指数
12
解决办法
10万
查看次数

urlencode一组值

我正在尝试使用urllib.urlencode对python中的字典进行urlencode.问题是,我必须编码一个数组.

结果必须是:

criterias%5B%5D=member&criterias%5B%5D=issue
#unquoted: criterias[]=member&criterias[]=issue
Run Code Online (Sandbox Code Playgroud)

但我得到的结果是:

criterias=%5B%27member%27%2C+%27issue%27%5D
#unquoted: criterias=['member',+'issue']
Run Code Online (Sandbox Code Playgroud)

我尝试过几件事,但似乎无法得到正确的结果.

import urllib
criterias = ['member', 'issue']
params = {
    'criterias[]': criterias,
}
print urllib.urlencode(params)
Run Code Online (Sandbox Code Playgroud)

如果我cgi.parse_qs用来解码一个正确的查询字符串,我得到这个结果:

{'criterias[]': ['member', 'issue']}
Run Code Online (Sandbox Code Playgroud)

但如果我对该结果进行编码,则会得到错误的结果.有没有办法产生预期的结果?

python http

42
推荐指数
2
解决办法
3万
查看次数

具有查询参数的Django URL模板

我正在尝试通过我的视图将查询参数传递到链接中,但这使我无法很好地实现这一目标。

我的模板如下:

<a class="link-button" href="{% url 'videos:index' %}?tag={{ tag }}&page={{ next }}">Next</a>
Run Code Online (Sandbox Code Playgroud)

这返回了我想要的:

http://127.0.0.1:8000/videos/?tag=1&page=2
Run Code Online (Sandbox Code Playgroud)

虽然这样做有效,但它非常脆弱,无法处理None值,因此必须有一种更好的方法。

我试图通过urltemplate标记传递它,但它似乎不是我想要的,因为它需要更改url配置的路径:

{% url 'videos:index' page=next tag=tag %}
Run Code Online (Sandbox Code Playgroud)

是否有执行此操作的实际方法或可以用来获取参数的模板标签?我尝试搜索它,但是它给了我很多旧结果,并且提供了更多路径URL,例如:/videos/page-1/tag-1/我不需要的。

我希望做这样的事情:

<a href="{% url 'videos:index'}?{% params page=next tag=tag %}">Next</a>
Run Code Online (Sandbox Code Playgroud)

django django-templates

5
推荐指数
1
解决办法
2219
查看次数

标签 统计

python ×2

django ×1

django-templates ×1

http ×1

url ×1