Python: импорт urllib.цитата



Я хотел бы использовать urllib.quote(). Но python (python3) не находит модуль.
Предположим, у меня есть эта строка кода:



print(urllib.quote("châteu", safe=''))


как импортировать urllib.цитата?



import urllib или
import urllib.quote как дать



AttributeError: 'module' object has no attribute 'quote'


что меня смущает-это то,urllib.request доступно через import urllib.request

655   3  

3 ответов:

В Python 3.x, вам нужно импортировать urllib.parse.quote:

>>> import urllib.parse
>>> urllib.parse.quote("châteu", safe='')
'ch%C3%A2teu'

по данным Python 2.x urllib документацию:

Примечание

The urllib модуль был разделен на части и переименован в Python 3 для urllib.request,urllib.parse и urllib.error.

Если вам нужно обрабатывать оба Python 2.x и 3.x вы можете поймать исключение и загрузить альтернативу.

try:
    from urllib import quote  # Python 2.X
except ImportError:
    from urllib.parse import quote  # Python 3+

вы также можете использовать оболочку совместимости python шесть чтобы справиться с этим.

from six.moves.urllib.parse import quote

urllib прошел через некоторые изменения в Python3 и теперь может быть импортирован из подмодуля parse

>>> from urllib.parse import quote  
>>> quote('"')                      
'%22'                               

Comments

    Ничего не найдено.