Python 我的编码哪里错了?(出现字母“x95\x84\xeb\…”)

Python 我的编码哪里错了?(出现字母“x95\x84\xeb\…”),python,python-3.x,twitter,unicode,encoding,Python,Python 3.x,Twitter,Unicode,Encoding,我的编码哪里错了?(字母“o”出现。) Sys.setdefaultencoding('utf-8')此语句已被删除。 我使用的是python3 然后字母x95\x84\xeb\xb0\xb0\xea\xb3\xa0\xed\x8c\x8c'就这样出现了 我的编码哪里错了 我也觉得很难理解 346 seconds: 52.25020146369934 347 seconds: 52.694828271865845 348 seconds: 52.80767774581909 349 second

我的编码哪里错了?(字母“o”出现。)

Sys.setdefaultencoding('utf-8')
此语句已被删除。 我使用的是
python3

然后字母x95\x84\xeb\xb0\xb0\xea\xb3\xa0\xed\x8c\x8c'就这样出现了

我的编码哪里错了

我也觉得很难理解

346 seconds: 52.25020146369934
347 seconds: 52.694828271865845
348 seconds: 52.80767774581909
349 seconds: 52.92116045951843
这样一来,数据(tweets)就会出来。 这是什么意思

#py3.6
import time
from selenium import webdriver
import codecs
import sys
import importlib

importlib.reload (sys)

browser = webdriver.PhantomJS('C:\phantomjs-2.1.1-windows/bin/phantomjs')
url = u'https://twitter.com/search?f=tweets&vertical=default&q=%EB%B0%B0%EA%B3%A0%ED%8C%8C%20since%3A2017-07-19%20until%3A2017-07-20&l=ko&src=typd&lang=ko'

browser.get(url)
time.sleep(1)

body = browser.find_element_by_tag_name('body')
browser.execute_script("window.scrollTo(0,document.body.scrollHeight);")

start = time.time()
for _ in range(5000):
    now = time.time()
    browser.execute_script("window.scrollTo(0,document.body.scrollHeight);")
    print (str(_) + "    seconds: " + str(now - start))
    time.sleep(0.1)

tweets=browser.find_elements_by_class_name('tweet-text')

with codecs.open("dlrjtdmstnrwp.txt", "w","utf-8") as f:
    i = 1
    for i, tweet in enumerate(tweets):
        data = tweet.text
        data = data.encode('utf-8')
        print (i, ":", data)
    msg = (str(data) +'\n')
    f.write(msg)
    i += 1

end = time.time() 
print(end - start)
browser.quit()

这是对您问题的简化版本的回答

因为我不懂韩语,所以我用谷歌翻译。我打了“你好”,然后把它翻译成韩语。 然后我查看“inspect元素”以获得翻译结果。这就是我们得到的:

在您的案例中,使用selenium提取
span
元素相当于提取
tweet文本
元素:

span = browser.find_element_by_class_name('short_text')
print(span.text)
这将给我们带来以下结果:

>>>안녕하세요

如您所见,不需要编码/解码,因为就我所知,在Python3.x
str=unicode

中,tweets的文本已经是unicode。据我所知,您希望将tweet写入一个文件,那么为什么要对数据进行编码呢?在那之后,为什么要使用
str(data)
?不要触摸编码系统,
codecs.open(“dlrjtdmstnrwp.txt”、“w”、“utf-8”)
读取字节和写入字节。重要的一点是“哪种编码系统传入?”,另一个想法是
python3
unicode
那么谁关心编码呢?@dsgdfg我搜索过。语言搜索结果​​除了用英语正确编写代码外,我还被要求这样写:((“57:b'\xeb\x84\xb9”当tweet出现时。)我如何更正和更正?编码的概念是缺乏的,我有trouble@nutmeg64这与上面的评论类似。我不能召集两个人,所以我会回信的。我正在导入语言​​除了英语。不是英语的互联网搜索结果是这样表达的。我仍然很难过,我不理解你的评论。这是因为编码的概念是不够的。您能解释一下吗?如果您的目标是将tweet写入一个文件,那么由于Python3默认处理unicode,您只需将其写入一个文件即可。它是哪种语言并不重要,假设它是作为unicode提供的。如果你的目标不同,那么请更具体一些。