回答
我認爲你正在尋找urllib.pathname2url。比較:
Python 3中,urllib.parse.quote:
>>> urllib.parse.quote('abc def/foo?bar=baz')
'abc%20def/foo%3Fbar%3Dbaz'
Python 2中,urllib.pathname2url:
>>> urllib.pathname2url('abc def/foo?bar=baz')
'abc%20def/foo%3Fbar%3Dbaz'
的行爲似乎與我相似,但他們可能會略有不同。
編輯:
上Algina的帖子閱讀您的意見,我覺得這是我建立的網址首選方式:
>>> url = 'http://dev.echonest.com/api/v4/song/search'
>>> params = {'api_key': 'xxxx', 'format': 'json', 'artist': 'Galaxie 500'}
>>> "{}?{}".format(url, urllib.urlencode(params))
'http://dev.echonest.com/api/v4/song/search?api_key=xxxx&artist=Galaxie+500&format=json'
你能更具體嗎? 你有 urllib.parse.quote_plus(...) urllib.parse.quote_from_bytes(...) urllib.parse.unquote(...)
像你提到的
見文件瀏覽: https://docs.python.org/3.2/library/urllib.parse.html
謝謝, 我'REQ = 'http://dev.echonest.com/api/v4/song/search?api_key=xxxx&format=json&artist=' + urllib.parse.quote(藝術家)' 和'artist =「Oasis」' – timothylhuillier
實際使用圖書館six
,這是爲python2製作/ python3兼容性,你可以做
import six.moves.urllib as urllib
# and now you can use urllib as it was python3
urllib.quote(...)
,如果你只是想python2,它實際上是urllib.quote
迪rectly
謝謝你的提示! –
嗨@ allan.simon,我已經安裝了'six(1.10.0)'軟件包,並且我得到了'AttributeError:'Module_six_moves_urllib'對象沒有屬性'quote'' ..任何想法爲什麼? –
似乎我需要'urllib.parse.quote(...)'(實際上我需要'urllib.parse.quote_plus(...)')。 –
- 1. 橙色2.7等效奧蘭治「test_on_data」 3
- 2. urllib.parse.quote不會採取utf8
- 3. 在Python 2.7中Python 3的Signal.sigwaitinfo等效嗎?
- 4. SyntaxError:無效語法Python 2.7
- 5. 等效
- 6. 將小數點除以2.5得出無效結果2.7到2.7
- 7. 等效於'@ECHO ON'的Unix等效
- 8. 無效的語法錯誤蟒蛇2.7
- 9. Python 2.7無效的語法錯誤
- 10. python 2.7+中無效的組引用
- 11. 無效\逸出json.loads(),蟒蛇2.7
- 12. 的Python 2.7的SyntaxError無效的語法
- 13. ApplicationUpdaterUI 1.5沒有奏效航2.7
- 14. 等效IFF的
- 15. WPF Radiobutton等效
- 16. ITextSharp VB.net等效
- 17. 等效於WM_MOVE
- 18. CIN的等效
- 19. Django ORM等效
- 20. JPanel doClick()等效
- 21. 等效ElasticSearch
- 22. Angular2等效ReactDOM.render
- 23. GtkVBox Qt等效
- 24. 串行等效
- 25. 等效System.Data.Linq.Binary
- 26. DataGridTemplateColumn EditingElementStyle等效
- 27. GCC等效m256_f32
- 28. OpenID等效
- 29. Image.FromHbitmap WPF等效
- 30. .equals()等效
謝謝,我會盡力 – timothylhuillier