Синтаксическая ошибка не-ASCII символа в Python при вызове URL - PullRequest
3 голосов
/ 07 апреля 2010

Как можно отправить данные на сервер?

Например, у меня есть MAC-адрес, поэтому я хочу отправить его на сервер (например, http://211.21.24.43:8080/data?mac=00-0C-F1-56-98-AD)

Я нашел этот фрагментв Интернете:

from urllib2 import Request, urlopen
from binascii import b2a_base64

def b64open(url, postdata):
  req = Request(url, b2a_base64(postdata), headers={'Content-Transfer-Encoding': 'base64'})
  return urlopen(req)

conn = b64open("http://211.21.24.43:8080/data","mac=00-0C-F1-56-98-AD")

но когда я его запускаю, я получаю:

File "send2.py", line 8
SyntaxError: Non-ASCII character '\xc3' in file send2.py on line 8, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

Может ли кто-нибудь помочь мне отправить данные на сервер?

Заранее спасибо

Ответы [ 4 ]

25 голосов
/ 15 марта 2011

поставить кодировку вверху .py файла

пример:

#!/usr/bin/env python
#coding: utf8 
import os
...

Это, вероятно, произошло потому, что вы скопировали / вставили какой-то символ Unicode, который не виден в вашем текстовом редакторе.

5 голосов
/ 12 октября 2013

Это решение работает для меня в Ubuntu.

Добавьте следующий оператор в самом начале, перед всеми операторами импорта.

# -*- coding: utf-8 -*-`

Аналогичный подход для ошибок с термином '\xe2'.

1 голос
/ 16 апреля 2013

Неправильные символы, вероятно, "запятая" или "кавычки" в строке 8. Это, вероятно, произошло во время "Ctrl + C", "Ctrl + V". ;) Вы можете попробовать переписать эти символы вручную.

0 голосов
/ 07 апреля 2010

Вы скопировали и вставили код с не-ASCII символами. У вас есть символ \xc3 в строке 8.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...