리눅스에선 맨 윗 줄에
-*- coding: utf-8 -*-
입력하면 파이썬에서 한글이 해결 된다던데요
리눅스가 아닌 윈도우에선 저 코드를 아예 인식을 못하던데 어떤 코드를 넣어야되나요..
구글링해서 아래 코드를 넣어봤는데도 해결이안되네요..
import sys reload(sys) sys.setdefaultencoding('utf-8')
show your code and error message.
import tweepy import json import re import sys reload(sys) sys.setdefaultencoding('utf-8') consumer_key = '' consumer_skey = '' access_token = '' access_stoken= '' class listener(tweepy.StreamListener): def on_data(self,data): print data return data def on_err(self,status): print status auth = tweepy. OAuthHandler(consumer_key, consumer_skey) auth.set_access_token(access_token, access_stoken) twitterStreaming = tweepy.Stream(auth, listener()) twitterStreaming.filter(track=(["대학교"]))
에러메시지는 SyntaxError: Non-ASCII character '\xb4' in file twit_test.py on line 20입니다..
tweepy 나 json 때문에 오류가 생기는것 같다고 생각하는게 아니라면, 그런거 없이 오류가 생기는 최소한의 코드를 만들어보고 올리는 것이 스스로 답을 찾는데 도움이 되겠네요.
--
우선 "대학교"의 첫번재 byte가 \xb4인것으로 보아 현재 파일은 euckr(또는 cp949)로 인코딩되어 저장되어있습니다.
해당 파일의 첫번째 줄은 #! 으로 시작하는 라인일 것이고, 그 바로 아래에 # -*- coding: cp949 -*-
를 써보세요. sys.setdefaultencoding('utf-8') 은 빼고요. 일단 이렇게 하면 오류없이 수행은 되야할것 같고요.
제대로 동작하려면 입력 파일들의 인코딩을 고려하셔야겠네요. tweepy 모듈이 cp949 인코딩을 지원하는지도 확인해봐야할거고요. python2 인지 python3 인지도 안 써놓으셨네요.
a = '한글' # ok type(a) class 'str' b = bytes(a, 'UTF-8') # ok type(b) class 'bytes'
python 3.4.3 입니다
3번째 줄을 아예 인식을 못하는데 어떻게 수정해야될까요 ㅠ
이게 제 전체 코드고
https://www.python.org/dev/peps/pep-0263/
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
show your code and error
show your code and error message.
import tweepy import
import tweepy
import json
import re
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
consumer_key = ''
consumer_skey = ''
access_token = ''
access_stoken= ''
class listener(tweepy.StreamListener):
def on_data(self,data):
print data
return data
def on_err(self,status):
print status
auth = tweepy. OAuthHandler(consumer_key, consumer_skey)
auth.set_access_token(access_token, access_stoken)
twitterStreaming = tweepy.Stream(auth, listener())
twitterStreaming.filter(track=(["대학교"]))
에러메시지는 SyntaxError: Non-ASCII character '\xb4' in file twit_test.py on line 20입니다..
tweepy 나 json 때문에 오류가 생기는것
tweepy 나 json 때문에 오류가 생기는것 같다고 생각하는게 아니라면,
그런거 없이 오류가 생기는 최소한의 코드를 만들어보고 올리는 것이
스스로 답을 찾는데 도움이 되겠네요.
--
우선 "대학교"의 첫번재 byte가 \xb4인것으로 보아
현재 파일은 euckr(또는 cp949)로 인코딩되어 저장되어있습니다.
해당 파일의 첫번째 줄은
#! 으로 시작하는 라인일 것이고,
그 바로 아래에
# -*- coding: cp949 -*-
를 써보세요.
sys.setdefaultencoding('utf-8') 은 빼고요.
일단 이렇게 하면 오류없이 수행은 되야할것 같고요.
제대로 동작하려면 입력 파일들의 인코딩을 고려하셔야겠네요.
tweepy 모듈이 cp949 인코딩을 지원하는지도 확인해봐야할거고요.
python2 인지 python3 인지도 안 써놓으셨네요.
a = '한글' # ok type(a) class
a = '한글' # ok
type(a)
class 'str'
b = bytes(a, 'UTF-8') # ok
type(b)
class 'bytes'
python 3.4.3 입니다
3번째 줄을 아예 인식을 못하는데 어떻게
3번째 줄을 아예 인식을 못하는데 어떻게 수정해야될까요 ㅠ
이게 제 전체 코드고
import tweepy
import json
import re
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
consumer_key = ''
consumer_skey = ''
access_token = ''
access_stoken= ''
class listener(tweepy.StreamListener):
def on_data(self,data):
print data
return data
def on_err(self,status):
print status
auth = tweepy. OAuthHandler(consumer_key, consumer_skey)
auth.set_access_token(access_token, access_stoken)
twitterStreaming = tweepy.Stream(auth, listener())
twitterStreaming.filter(track=(["대학교"]))
에러메시지는 SyntaxError: Non-ASCII character '\xb4' in file twit_test.py on line 20입니다..
참고하세요
https://www.python.org/dev/peps/pep-0263/
댓글 달기