当在eBay中输入一个多词搜索词时,生成的URL看起来像这样(例如“demarini cf5 cf12”):
http://www.ebay.com/sch/i.html?_from=R40&_sacat=0&_nkw=demarini%20cf5%20cfc12
我希望能够在Python中构建此URL以便可以直接访问。因此,它的处理方式是连接基本URL:
http://www.ebay.com/sch/i.html?_from=R40&_sacat=0&_nkw=
...使用搜索词。现在,我明确地为空格添加%20
:
baseUrl = 'http://www.ebay.com/sch/i.html?_from=R40&_sacat=0&_nkw='
searchTerm = 'demarini cf5 cf12'
searchTerm = ('%20').join(searchTerm.split(' '))
finalUrl = baseUrl + searchTerm
在Python中更正式的做法是什么?我相信这种任务的名称是URL编码?
urllib.quote()
。 - larsks+
符号。请参见Wikipedia和HTML规范。因此,当只编码一个键或值时应使用urllib.quote_plus()
,或者当您有一个键值对字典或序列时使用urllib.urlencode()
。 - Martijn Pieters