Skip to main content
 首页 » 编程设计

python之操作列表中的值 (URL)之Python

2025年05月04日19zfyouxi

我想重新格式化列表中的值。我正在尝试使用 scrapy 从网站中提取 url。 Scrapy 返回相对 URL,然后将其存储在列表中。我想将绝对 url 与相对 url 结合起来,并在列表本身内进行一些匹配和替换相对 url,然后将其用于下一步。

这是当前列表的样子:

regions = ['/listings/in/spain%2Fandalucia', '/listings/in/spain%2Faragon', '/listings/in/spain%2Fasturias', '/listings/in/spain%2Fbalearic-islands'] 

这就是它理想的样子。

regions_final = ['https://worldmap.com/listings/in/spain/andalucia', 'http://worldmap.comlistings/in/spain/Faragon', 'http://worldmap.comlistings/in/spain/fasturias', 'http://worldmap.com/listings/in/spain/balearic-islands'] 

我需要为“/”简单地查找和替换“%2F”,并在当前值前面附加“https://worldmap.com”。 如果有人有任何提示,我将不胜感激!

谢谢

请您参考如下方法:

这是创建 URL 的更可靠的方法:

from urllib.parse import unquote 
 
region_urls = [response.urljoin(unquote(x)) for x in regions] 

urljoin负责根据当前响应的基本 URL 加上相对 URL 创建正确的绝对 URL。

unquote处理 %.. 符号,以防您还得到其他符号。