Форум сайта python.su
Всем доброго времени суток.
Суть дела.
Пытаюсь запустить приложение twisted из этого примера.
вот код
import os from twisted.application import service, internet from twisted.web import static, server from twisted.python.log import ILogObserver, FileLogObserver from twisted.python.logfile import DailyLogFile def getWebService(): """ Return a service suitable for creating an application object. This service is a simple web server that serves files on port 8080 from underneath the current working directory. """ # create a resource to serve static files fileServer = server.Site(static.File(os.getcwd())) return internet.TCPServer(8080, fileServer) # this is the core part of any tac file, the creation of the root-level # application object application = service.Application("Demo application") logfile = DailyLogFile("twistd.log", ".") application.setComponent(ILogObserver, FileLogObserver(logfile).emit) # attach the service to its parent application service = getWebService() service.setServiceParent(application)
2016-07-26 20:52:40+0300 Loading ./test.py…
2016-07-26 20:52:40+0300 Loaded.
2016-07-26 20:52:40+0300 twistd 16.3.0 (/usr/bin/python3.5 3.5.1) starting up.
2016-07-26 20:52:40+0300 reactor class: twisted.internet.epollreactor.EPollReactor.
2016-07-26 20:52:40+0300 Site starting on 8080
2016-07-26 20:52:40+0300 Starting factory <twisted.web.server.Site object at 0x7ffa689cb4a8>
2016-07-26 20:52:40+0300 Traceback (most recent call last):
2016-07-26 20:52:40+0300 File “/usr/bin/twistd”, line 18, in <module>
2016-07-26 20:52:40+0300 run()
2016-07-26 20:52:40+0300 File “/usr/lib/python3.5/site-packages/twisted/scripts/twistd.py”, line 29, in run
2016-07-26 20:52:40+0300 app.run(runApp, ServerOptions)
2016-07-26 20:52:40+0300 File “/usr/lib/python3.5/site-packages/twisted/application/app.py”, line 643, in run
2016-07-26 20:52:40+0300 runApp(config)
2016-07-26 20:52:40+0300 File “/usr/lib/python3.5/site-packages/twisted/scripts/twistd.py”, line 25, in runApp
2016-07-26 20:52:40+0300 _SomeApplicationRunner(config).run()
2016-07-26 20:52:40+0300 File “/usr/lib/python3.5/site-packages/twisted/application/app.py”, line 378, in run
2016-07-26 20:52:40+0300 self.postApplication()
2016-07-26 20:52:40+0300 File “/usr/lib/python3.5/site-packages/twisted/scripts/_twistd_unix.py”, line 220, in postApplication
2016-07-26 20:52:40+0300 untilConcludes(os.write, statusPipe, “0”)
2016-07-26 20:52:40+0300 File “/usr/lib/python3.5/site-packages/twisted/python/util.py”, line 715, in untilConcludes
2016-07-26 20:52:40+0300 return f(*a, **kw)
2016-07-26 20:52:40+0300 TypeError: a bytes-like object is required, not ‘str’
Отредактировано Diez37 (Июль 26, 2016 21:00:11)
Офлайн
нашел ошибку в файле twisted.scripts._twistd_unix.py
в 221 строке
untilConcludes(os.write, statusPipe, "0")
untilConcludes(os.write, statusPipe, "0".encode())
Отредактировано Diez37 (Июль 26, 2016 22:19:35)
Офлайн