Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 15, 2012 22:30:29

v4567
От:
Зарегистрирован: 2012-02-15
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

вообще конечно это нонсенс, что новая ветка не поддерживает старые скрипты, это какая то хрень получается что все скрипты написанные ранее уже работать не будут в новой ветке, это не язык это херьня



Офлайн

#2 Фев. 15, 2012 22:36:07

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

у вас есть утилита 2to3 ?

Офлайн

#3 Фев. 16, 2012 08:47:10

v4567
От:
Зарегистрирован: 2012-02-15
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

s0rg огромное спасибо за то что помогаете.
утилита 2to3 есть на форуме forum.vingrad.ru мне подсказали что нужно её натравить на библиотеку, но я в питоне ничего не понимаю, если Вам не трудно можете подробней рассказать что с ней надо делать. Ещё раз огромное спасибо за помощь!



Офлайн

#4 Фев. 19, 2012 13:44:29

v4567
От:
Зарегистрирован: 2012-02-15
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

s0rg сделал как ты говоришь - натравил 2yo3 на iotop, в результате чего были исправлены все синтаксические ошибки и iotop был без проблем установлен. Но при запуске выдало вот что:

Traceback (most recent call last):
File "/usr/bin/iotop", line 16, in <module>
main()
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 571, in main
main_loop()
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 561, in <lambda>
main_loop = lambda: run_iotop(options)
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 465, in run_iotop
return curses.wrapper(run_iotop_window, options)
File "/usr/lib/python3.2/curses/wrapper.py", line 43, in wrapper
return func(stdscr, *args, **kwds)
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 455, in run_iotop_window
taskstats_connection = TaskStatsNetlink(options)
File "/usr/lib/python3.2/site-packages/iotop/data.py", line 146, in __init__
self.family_id = controller.get_family_id('TASKSTATS')
File "/usr/lib/python3.2/site-packages/iotop/genetlink.py", line 65, in get_family_id
a = NulStrAttr(CTRL_ATTR_FAMILY_NAME, family)
File "/usr/lib/python3.2/site-packages/iotop/netlink.py", line 131, in __init__
Attr.__init__(self, attr_type, "%dsB" % len(data), data, 0)
File "/usr/lib/python3.2/site-packages/iotop/netlink.py", line 97, in __init__
self.data = struct.pack(data, *values)
struct.error: argument for 's' must be a bytes object
это наверное уже никак не исправить?



Офлайн

#5 Фев. 19, 2012 15:06:57

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

Попробуйте сделать так:
в файле /usr/lib/python3.2/site-packages/iotop/netlink.py на строке 131
измените: Attr.__init__(self, attr_type, “%dsB” % len(data), data, 0) на Attr.__init__(self, attr_type, “%dsB” % len(data), bytes(data), 0)
Я не уверен что это 100% сработает - с 3-й версией я не работал )
Может более опытные товарищи здесь смогут подсказать.

Офлайн

#6 Фев. 19, 2012 20:28:56

v4567
От:
Зарегистрирован: 2012-02-15
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

s0rg не помогло, вот что выдало:

Traceback (most recent call last):
File “/usr/bin/iotop”, line 16, in <module>
main()
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 571, in main
main_loop()
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 561, in <lambda>
main_loop = lambda: run_iotop(options)
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 465, in run_iotop
return curses.wrapper(run_iotop_window, options)
File “/usr/lib/python3.2/curses/wrapper.py”, line 43, in wrapper
return func(stdscr, *args, **kwds)
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 455, in run_iotop_window
taskstats_connection = TaskStatsNetlink(options)
File “/usr/lib/python3.2/site-packages/iotop/data.py”, line 146, in __init__
self.family_id = controller.get_family_id('TASKSTATS')
File “/usr/lib/python3.2/site-packages/iotop/genetlink.py”, line 65, in get_family_id
a = NulStrAttr(CTRL_ATTR_FAMILY_NAME, family)
File “/usr/lib/python3.2/site-packages/iotop/netlink.py”, line 131, in __init__
Attr.__init__(self, attr_type, “%dsB” % len(data), bytes(data), 0)
TypeError: string argument without an encoding



Офлайн

#7 Фев. 19, 2012 20:37:27

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

bytes(data, 'utf8')
?

Офлайн

#8 Фев. 19, 2012 20:49:41

v4567
От:
Зарегистрирован: 2012-02-15
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

теперь вот:

Traceback (most recent call last):
File “/usr/bin/iotop”, line 16, in <module>
main()
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 571, in main
main_loop()
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 561, in <lambda>
main_loop = lambda: run_iotop(options)
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 465, in run_iotop
return curses.wrapper(run_iotop_window, options)
File “/usr/lib/python3.2/curses/wrapper.py”, line 43, in wrapper
return func(stdscr, *args, **kwds)
File “/usr/lib/python3.2/site-packages/iotop/ui.py”, line 455, in run_iotop_window
taskstats_connection = TaskStatsNetlink(options)
File “/usr/lib/python3.2/site-packages/iotop/data.py”, line 146, in __init__
self.family_id = controller.get_family_id('TASKSTATS')
File “/usr/lib/python3.2/site-packages/iotop/genetlink.py”, line 67, in get_family_id
flags=NLM_F_REQUEST, attrs=)
File “/usr/lib/python3.2/site-packages/iotop/genetlink.py”, line 47, in __init__
payload=+attrs)
File “/usr/lib/python3.2/site-packages/iotop/netlink.py”, line 183, in __init__
contents.append(attr._dump())
File “/usr/lib/python3.2/site-packages/iotop/netlink.py”, line 105, in _dump
return hdr + self.data + ‘\0’ * pad
TypeError: can't concat bytes to str



Офлайн

#9 Фев. 20, 2012 00:19:38

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

return bytes(hdr + self.data + '\0' * pad, 'utf8')

Офлайн

#10 Фев. 20, 2012 10:12:43

v4567
От:
Зарегистрирован: 2012-02-15
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

iotop v 0.4.4 не работает в python v.3.2.2

s0rg огромное спасибо за помощь но наверное не победить эти ошибки, исправил - не работает вот что выдало:

Traceback (most recent call last):
File "/usr/bin/iotop", line 16, in <module>
main()
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 571, in main
main_loop()
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 561, in <lambda>
main_loop = lambda: run_iotop(options)
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 465, in run_iotop
return curses.wrapper(run_iotop_window, options)
File "/usr/lib/python3.2/curses/wrapper.py", line 43, in wrapper
return func(stdscr, *args, **kwds)
File "/usr/lib/python3.2/site-packages/iotop/ui.py", line 455, in run_iotop_window
taskstats_connection = TaskStatsNetlink(options)
File "/usr/lib/python3.2/site-packages/iotop/data.py", line 146, in __init__
self.family_id = controller.get_family_id('TASKSTATS')
File "/usr/lib/python3.2/site-packages/iotop/genetlink.py", line 67, in get_family_id
flags=NLM_F_REQUEST, attrs=[a])
File "/usr/lib/python3.2/site-packages/iotop/genetlink.py", line 47, in __init__
payload=[GenlHdr(self.cmd)]+attrs)
File "/usr/lib/python3.2/site-packages/iotop/netlink.py", line 183, in __init__
contents.append(attr._dump())
File "/usr/lib/python3.2/site-packages/iotop/netlink.py", line 105, in _dump
return bytes(hdr + self.data + '\0' * pad, 'utf8')
TypeError: can't concat bytes to str



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version