【发布时间】:2017-12-28 08:52:43
【问题描述】:
我的原始代码是这样的。
#py3.6, windows10
import time
from selenium import webdriver
import codecs
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
不支持重新加载。它已修复。
Import importlib
Importlib.reload (sys)
但也有错误。
AttributeError: 模块 'sys' 没有属性 'setdefaultencoding'
我应该如何解决这个问题?非常感谢您的帮助。
我还附上了我的整个代码。
import time
from selenium import webdriver
import codecs
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
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(500):
now = time.time()
browser.execute_script("window.scrollTo(0,
document.body.scrollHeight);")
print str(_) + " seconds: " + str(now - start)
time.sleep(0.2)
tweets=browser.find_elements_by_class_name('tweet-text')
with codecs.open("test.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()
【问题讨论】:
-
启动python 3.4,此功能不再可用。
-
还有
import和importlib,没有大写...请仔细检查您在此处输入的内容;) -
顺便说一句,后面的代码不可能在 Python 3.6 上运行!
标签: python python-3.x encoding web-scraping