你好,bobby新浪微博的登录验证码改了,网上的这个是基于python2.7的,这里改造怎么报错了?
2.7代码
import StringIO
im0 = Image.open(StringIO.StringIO(browser.get_screenshot_as_png()))
改造后代码
from io import StringIO
im0 = Image.open(StringIO.read(browser.get_screenshot_as_png().decode('ascii')))
报错
File "D:/python/splider/ArticleSplider/ArticleSplider/login.py", line 48, in getType
im0 = Image.open(StringIO.read(browser.get_screenshot_as_png().decode('ascii')))
UnicodeDecodeError: 'ascii' codec can't decode byte 0x89 in position 0: ordinal not in range(128)
可是的源码用的就是asciiencode的为啥decode会出错
def get_screenshot_as_png(self):
"""
Gets the screenshot of the current window as a binary data.
:Usage:
driver.get_screenshot_as_png()
"""
return base64.b64decode(self.get_screenshot_as_base64().encode('ascii'))
带你彻底掌握Scrapy,用Django+Elasticsearch搭建搜索引擎
了解课程