Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带查询变量的Python urlparse urljoin_Python - Fatal编程技术网

带查询变量的Python urlparse urljoin

带查询变量的Python urlparse urljoin,python,Python,我想加入url1和url2: url1 = "https://www.test.com.tw/search?q=AAA" url2 = "&start=10" 致: 这样我就可以更改url2以获得start=10,start=20 这是一个类似于: link ="https://www.test.com.tw/search?q=AAA" start = 10 def combineurl(link,num): url1 = link url2 = '&start

我想加入
url1
url2

url1 = "https://www.test.com.tw/search?q=AAA"
url2 = "&start=10"
致:

这样我就可以更改
url2
以获得start=10,start=20

这是一个类似于:

link ="https://www.test.com.tw/search?q=AAA"
start = 10
def combineurl(link,num):
    url1 = link
    url2 = '&start={start}'.format(start=num)
    global start
    start +=10
    return url1 + url2
print combineurl(link,start)
下一次,我将抛出
combineurl(link,start)
def combineurl

print combineurl(combineurl(link,start),start)
结果将是:
https://www.test.com.tw/search?q=AAA&start=20&start=30

但我需要的是
https://www.test.com.tw/search?q=AAA&start=30

我怎样才能得到我想要的结果??
谢谢

您可以尝试字符串对象的格式化方法:

>>> url1 = "https://www.test.com.tw/search?q=AAA&start={0}"
>>> url2 = url1.format(10)
>>> url2
'https://www.test.com.tw/search?q=AAA&start=10'
>>> url3 = url1.format(20)
>>> url3
'https://www.test.com.tw/search?q=AAA&start=20'

看起来您只是在寻找字符串连接:

theurl = url1 + url2

这不是“urllib.urljoin”的工作,它更多的是正确地组合绝对和相对URL。

这应该符合您在编辑中描述的内容

def combineurl(link,num):
    link = link.split("&start")[0]
    return link + '&start={0}'.format(num)

combine=url1+url2?对不起,我没有很好地描述,我编辑了它
def combineurl(link,num):
    link = link.split("&start")[0]
    return link + '&start={0}'.format(num)