문제

Twitter API로 놀고 있지만 터키 문자 인코딩에 관한 몇 가지 질문이 있습니다.다음은 내가 함께 일하는 코드입니다 :

# -*- coding: cp1254 -*-
import sys
import csv
import tweepy
import locale
import string
locale.setlocale(locale.LC_ALL, "Turkish")

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)

f=open("tweets.csv", "wb")
for q in [list of search queries]:

     a=[tweet.text.encode("utf-8") for tweet in tweepy.Cursor(api.search, q, result_type="recent", include_entities=True, lang="tr").items(20)]
     wr=csv.writer(f, quoting=csv.QUOTE_ALL)
     wr.writerow(q)
.

기본적으로, 내가하는 일은 검색 쿼리 목록을 반복 한 다음 Tweets를 Excel 파일에 쓰는 것으로 검색 API를 실행하는 것입니다.그러나 내가 무엇을하는 일이 있더라도, 짹짹은 정규 터키 문자를 다른 대체물로 대체하여 기록됩니다.나는 여러 가지를 시도했다 (로케일을 설정하여 .encode ( "utf-8") 부분 등을 시도했지만, 여전히 그것을 고치는 방법을 모른다.

여기에 내가 말하는 것입니다 :

쓰여진

ÃNGER ARENA

내가 원하는 것을 쓰고 싶습니다 : Dün Akşam Ülker Arena

내가 이해하지 못하는 것은 ü, ü 그리고 ş는 모두 터키어로 로케일을 설정할 때 로컬 편지에 있지만 파이썬은이 편지를 대체합니다.

도움이 되었습니까?

해결책

I 시스템에 코드를 복제했습니다 (Windows 7, Office 2010과 함께) 작동합니다. 코드를 사용했지만 다음과 같이 검색 쿼리를 간소화했습니다.

search_results = api.search(q="canan1405", count=10)
for tweet in search_results:
    print tweet.text.encode('utf-8')
.

나는 터키 문자가 포함 된 'Canan1405'사용자로부터 트윗을 뽑았습니다. (희망이 괜찮아!)

다음과 같이 내 스크립트의 출력을 파일로 단순히 리디렉션했습니다.

python so_24038317.py> tweets.csv

이 시점에서 Tweets.csv 파일에는 UTF-8로 인코딩 된 유니 코드 문자가 들어 있습니다. 파일을 두 번 클릭하면 기본 Excel 디스플레이에 다음과 같이 가비지 문자가 표시됩니다.

csv 파일을 두 번 클릭하는 대신 다음 단계를 수행하여 파일을 가져옵니다.

  1. 엑셀을 시작하십시오.
  2. 리본의 "데이터"탭을 클릭하십시오.
  3. "외부 데이터 가져 오기"에서 "텍스트에서"아이콘을 클릭하십시오.
  4. CSV 파일을 찾고 "가져 오기"버튼을 클릭하십시오.
  5. 마법사가 표시됩니다. 제 경우에는 파일 내용에 대한 올바른 추측이 나타났습니다 ( "파일 원본 :"드롭 다운) :
  6. 마법사에 대한 나머지 단계를 완료 할 수 있지만 선택 사항입니다. 올바르게 표시된 파일 :

    내가 알 수있는 한, 다음과 같은 터키 문자가 들어 있고 (정확하게 표시)됩니다.

    ş, Ğ, İ, ğ, ı, ç

    문자열 "oyy şirin kedi"직후의 문자는 유효한 UTF-8 문자가 아닌 이모티콘입니다. 이것이 도움이되기를 바랍니다.

다른 팁

iso-8859-9 또는 iso-8859 encode를 사용하여 터키 문자가 있습니다.

편집 : UTF8 인코딩을 절대적으로 원한다면 디코딩 및 인코딩 이 myString.decode('iso-8859-9').encode('utf8')

를 수행 할 수 있습니다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top