Я создал приложение Django с python 3.4 на платформе Windows. Теперь я пытаюсь разместить его на экземпляре AWS Linux. Первый раз я столкнулся следующее сообщение об ошибкеDjango: ascii codec не может декодировать байт 0xe2
Non-ASCII символ '\' XE2
Я решил эту проблему, добавив в кодировке UTF на каждой странице.
- - кодирование: UTF-8 - -
Теперь я столкнулся следующее сообщение об ошибке
'ASCII' кодек не может декодировать байт 0xe2 в положении 18: порядковый не в диапазоне (128)
Код:
class TaskTodo:
@classmethod
def validate_search(cls, form_data):
try:
search_url = 'https://www.foo.com/s-{search}/page-{page}'
url = search_url.format(page=1, search=form_data['keywords'])
url = url.encode('utf-8')
r = requests.get(url)
not_found_text = 'Sorry, but we didn’t find any results. Below you can find some tips to help you in your search.'
if not_found_text in r.text.encode('utf-8'):
return
#after encoding its not working on localhost
#'str' does not support the buffer interface
if r.status_code == 200:
content = r.text
soup = BeautifulSoup(content, "html.parser")
total = soup.find('span', {"class": 'count'}).text.replace('words', '').replace(',', '').strip()
pages = 1
last_page = soup.find('a', {"class": 'last follows'})
if last_page:
href = last_page['href'].split('/')
pages = int(href[len(href) - 1].replace('somewords', '').strip())
except Exception as ex:
raise ex
Я искал и пытался внедрить кодировку и т. Д., Но не работает. Я завершил приложение, и в основном функции выполняют запрос на http, разбор html и т. Д. Его действительно беспокоит, чтобы я отлаживал производственный сервер и кодировал каждую функцию.
Я использую Apache на сервере производства и пытался как с питона версии 2.7 и 3.5
Любая идея, как я могу решить эту проблему. Спасибо
Вам необходимо показать [код, создающий ошибку] (http://stackoverflow.com/help/mcve). – Withnail
может возникнуть проблема с вашим терминалом. Есть ли возможность попробовать в другой среде? Я столкнулся с этим, когда на сервере возникли проблемы с локалью. – Snobby
@Snobby нет, это не проблема –