Python网站垃圾url spli

2024-09-28 20:53:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我喜欢分开 此url:

https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal=100&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal

所以应该是:

https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal=

以及

&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal

因为我想把数字100改到下一页

我怎么能在两者之间有一个变量呢


Tags: nohttpsperlcgiantoppn1startpos
3条回答

我建议使用re,它更快,更准确:

>>> url = "https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal=100&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal"
>>> re.sub(r'(?<=ant\_bokmaal\=)\d+', str(999), url)
'https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal=999&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal'

如果只是这个非常具体的替换,那么可以使用stringreplace函数

s="https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal=100&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal"

替换

s.replace("ant_bokmaal=100", "ant_bokmaal=111")

结果

https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal=111&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal'

你可以看到antèu bokmall变成了111

使用format()在其中传递变量

def url(index):
 url="https://ordbok.uib.no/perl/ordbok.cgi?startpos=1&ant_bokmaal={}&ant_nynorsk=5&antall_vise=1&OPP=+n1&ordbok=bokmaal&bokmaal=%2B&spraak=bokmaal".format(index)
 print(url)

相关问题 更多 >