У меня есть строки, такие как
["Tabula Rasa", "façade", "DJ Tiësto"]
Я получаю доступ к API Ajax Google в Python, используя базовый url:
base = 'http://ajax.googleapis.com/ajax/services/search/web'
'?v=1.0&q=%s'
У меня проблемы с этими строками, и я заметил, что мне нужно преобразовать определенные символы,
eg. "Tabula Rasa" --> "Tabula%20Rasa"
Но у меня есть огромный список этих строк, и я не знаю, как я могу автоматически подготовить эту строку для запроса URL.
Любая помощь будет очень оценена.
То, что вы ищете, это urllib.quote():
>>> urllib.quote("Tabula Rasa")
'Tabula%20Rasa'
Строки, не содержащие ASCII, возможно, необходимо будет перекодировать в кодировку, ожидаемую API AJAX Google, если у вас их еще нет в той же кодировке.
data.encode('utf-8')
.) Если у вас есть символы, извлеченные из HTML-страницы, я Я бы хотел, чтобы они были в строке Unicode - но если они есть в качестве строки байтов, расшифруйте их, используя кодировку, используемую на веб-странице. Затем вы кодируете в правильную кодировку, как любой другой объект Unicode.