Urllib3 парс цитата - PullRequest
       7

Urllib3 парс цитата

0 голосов
/ 11 декабря 2018

Я начинаю изучать python3 и пытаюсь преобразовать строку в кодирование процентов.Я использую urllib3.Вот что написано:

import urllib3

from urllib.parse import quote 
quote ('/this will be the text/')
print (quote)

Результат кода выглядит следующим образом:

<function quote at 0x7ff77eca3d08>

Что я действительно хочу:

this%20will%20be%20the%20text

Iчестно прочитайте документацию urllib3 и прочитайте ветку процента кодирования URL с Python , но мне все равно не повезло.

Я использую Python3 с urllib3.

1 Ответ

0 голосов
/ 11 декабря 2018

Привет, GuyFawkes05th и добро пожаловать в StackOverflow.

Поведение, которое вы испытываете, не является ошибкой или проблемой, а скорее делает именно то, что вы просили.

Рассмотрим этот фрагмент, запущенный в режиме IDLE:

Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import urllib3
>>> from urllib.parse import quote
>>> quote('/this will be the text/')
'/this%20will%20be%20the%20text/'
>>> print(quote)
<function quote at 0x00000000030557B8>
>>> 

Вы можете видеть, что ваш текст экранирован сразу после вызова кавычки, однако ваше утверждение печати не отражает этого.Это потому, что вы печатаете саму функцию .Если вы немного измените свой код, он будет работать так, как вы ожидаете:

>>> import urllib3
>>> from urllib.parse import quote
>>> text = quote('this will be the text')
>>> print(text)
this%20will%20be%20the%20text
>>> 

Вы можете видеть здесь, я назначил вывод из вызова на quote для текста переменного вызова, а затем напечатал текст.

Надеюсь, это поможет вам прояснить ситуацию!

...