本文整理汇总了Python中zenmapCore.UmitConf.NmapOutputHighlight.__getattribute__方法的典型用法代码示例。如果您正苦于以下问题:Python NmapOutputHighlight.__getattribute__方法的具体用法?Python NmapOutputHighlight.__getattribute__怎么用?Python NmapOutputHighlight.__getattribute__使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类zenmapCore.UmitConf.NmapOutputHighlight
的用法示例。
在下文中一共展示了NmapOutputHighlight.__getattribute__方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: NmapOutputProperties
# 需要导入模块: from zenmapCore.UmitConf import NmapOutputHighlight [as 别名]
# 或者: from zenmapCore.UmitConf.NmapOutputHighlight import __getattribute__ [as 别名]
class NmapOutputProperties(HIGDialog):
def __init__(self, nmap_output_view):
HIGDialog.__init__(self, _("Nmap Output Properties"),
buttons=(gtk.STOCK_CLOSE, gtk.RESPONSE_CLOSE))
self.nmap_highlight = NmapOutputHighlight()
self.__create_widgets()
self.__pack_widgets()
self.highlight_tab()
self.vbox.show_all()
def __create_widgets(self):
self.properties_notebook = HIGNotebook()
def __pack_widgets(self):
self.vbox.pack_start(self.properties_notebook)
def highlight_tab(self):
# Creating highlight tab main box
self.highlight_main_vbox = HIGVBox()
# Creating highlight tab main table
self.highlight_main_table = HIGTable()
self.highlight_main_table.set_border_width(6)
#############
# Properties:
self.property_names = {"details": [_("details"), "MAC Address:"],
"port_list": [_("port listing title"),
"PORT STATE SERVICE"],
"open_port": [_("open port"),
"22/tcp open ssh"],
"closed_port": [_("closed port"),
"70/tcp closed gopher"],
"filtered_port": [_("filtered port"),
"80/tcp filtered http"],
"date": [_("date"), "2006-05-26 11:14 BRT"],
"hostname": [_("hostname"), "scanme.nmap.org"],
"ip": [_("ip"), "127.0.0.1"]}
for p in self.property_names:
settings = self.nmap_highlight.__getattribute__(p)
self.property_names[p].append(settings[0])
self.property_names[p].append(settings[1])
self.property_names[p].append(settings[2])
self.property_names[p].append(gtk.gdk.Color(*settings[3]))
self.property_names[p].append(gtk.gdk.Color(*settings[4]))
self.property_names[p].append(settings[5])
# Creating properties and related widgets and attaching it to main
# table
y1 = 0
y2 = 1
for p in self.property_names:
hp = HighlightProperty(p, self.property_names[p])
self.highlight_main_table.attach(
hp.property_name_label, 0, 1, y1, y2)
self.highlight_main_table.attach(hp.example_label, 1, 2, y1, y2)
self.highlight_main_table.attach(hp.bold_tg_button, 2, 3, y1, y2)
self.highlight_main_table.attach(hp.italic_tg_button, 3, 4, y1, y2)
self.highlight_main_table.attach(
hp.underline_tg_button, 4, 5, y1, y2)
self.highlight_main_table.attach(
hp.text_color_button, 5, 6, y1, y2)
self.highlight_main_table.attach(
hp.highlight_color_button, 6, 7, y1, y2)
# Setting example styles and colors
hp.update_example()
self.property_names[p].append(hp)
y1 += 1
y2 += 1
# Packing main table into main vbox
self.highlight_main_vbox.pack_start(self.highlight_main_table)
# Adding color tab
self.properties_notebook.append_page(
self.highlight_main_vbox,
gtk.Label(_("Highlight definitions")))
示例2: NmapOutputViewer
# 需要导入模块: from zenmapCore.UmitConf import NmapOutputHighlight [as 别名]
# 或者: from zenmapCore.UmitConf.NmapOutputHighlight import __getattribute__ [as 别名]
class NmapOutputViewer (gtk.VBox):
HIGHLIGHT_PROPERTIES = ["details", "date", "hostname", "ip", "port_list",
"open_port", "closed_port", "filtered_port"]
def __init__(self, refresh=1, stop=1):
self.nmap_highlight = NmapOutputHighlight()
gtk.VBox.__init__(self)
# Creating widgets
self.__create_widgets()
# Setting scrolled window
self.__set_scrolled_window()
# Setting text view
self.__set_text_view()
buffer = self.text_view.get_buffer()
# The end mark is used to scroll to the bottom of the display.
self.end_mark = buffer.create_mark(None, buffer.get_end_iter(), False)
self.refreshing = True
# Adding widgets to the VBox
self.pack_start(self.scrolled, expand=True, fill=True)
# The NmapCommand instance, if any, whose output is shown in this
# display.
self.command_execution = None
# The position of the last read from the output stream.
self.output_file_pointer = None
def __create_widgets(self):
# Creating widgets
self.scrolled = gtk.ScrolledWindow()
self.text_view = gtk.TextView()
def __set_scrolled_window(self):
# Seting scrolled window
self.scrolled.set_border_width(5)
self.scrolled.add(self.text_view)
self.scrolled.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
def __set_text_view(self):
self.text_view.set_wrap_mode(gtk.WRAP_WORD)
self.text_view.set_editable(False)
self.tag_font = self.text_view.get_buffer().create_tag(None)
self.tag_font.set_property("family", "Monospace")
for property in self.HIGHLIGHT_PROPERTIES:
settings = self.nmap_highlight.__getattribute__(property)
tag = self.text_view.get_buffer().create_tag(property)
if settings[0]:
tag.set_property("weight", pango.WEIGHT_HEAVY)
else:
tag.set_property("weight", pango.WEIGHT_NORMAL)
if settings[1]:
tag.set_property("style", pango.STYLE_ITALIC)
else:
tag.set_property("style", pango.STYLE_NORMAL)
if settings[2]:
tag.set_property("underline", pango.UNDERLINE_SINGLE)
else:
tag.set_property("underline", pango.UNDERLINE_NONE)
text_color = settings[3]
highlight_color = settings[4]
tag.set_property(
"foreground", gtk.color_selection_palette_to_string(
[gtk.gdk.Color(*text_color), ]))
tag.set_property(
"background", gtk.color_selection_palette_to_string(
[gtk.gdk.Color(*highlight_color), ]))
def go_to_host(self, host):
"""Go to host line on nmap output result"""
buff = self.text_view.get_buffer()
start_iter = buff.get_start_iter()
found_tuple = start_iter.forward_search(
"\nNmap scan report for %s\n" % host, gtk.TEXT_SEARCH_TEXT_ONLY
)
if found_tuple is None:
return
found = found_tuple[0]
if not found.forward_line():
return
self.text_view.scroll_to_iter(found, 0, True, 0, 0)
def show_output_properties(self, widget):
nmap_out_prop = NmapOutputProperties(self.text_view)
nmap_out_prop.run()
for prop in nmap_out_prop.property_names:
#.........这里部分代码省略.........