{"id":13845523,"url":"https://github.com/LimberDuck/nessus-file-reader","last_synced_at":"2025-07-12T02:31:46.285Z","repository":{"id":34969874,"uuid":"193396640","full_name":"LimberDuck/nessus-file-reader","owner":"LimberDuck","description":"CLI tool and python module which enables you to parse nessus scan files from Nessus and Tenable.SC by (C) Tenable, Inc.","archived":false,"fork":false,"pushed_at":"2024-07-10T04:21:30.000Z","size":148,"stargazers_count":39,"open_issues_count":3,"forks_count":4,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-04T19:15:41.447Z","etag":null,"topics":["nessus","nessus-files","nessus-parser","nessus-report","nessus-scanner","security-tools","tenable","tenablesc"],"latest_commit_sha":null,"homepage":"https://limberduck.org","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LimberDuck.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-23T21:20:55.000Z","updated_at":"2024-07-22T18:56:14.000Z","dependencies_parsed_at":"2024-06-21T19:08:45.809Z","dependency_job_id":"0c51788b-c0f9-431c-9d5f-8811b109be32","html_url":"https://github.com/LimberDuck/nessus-file-reader","commit_stats":{"total_commits":66,"total_committers":2,"mean_commits":33.0,"dds":"0.25757575757575757","last_synced_commit":"b4cddcf8fd26212b6b7513fc9ba6de0f89270ac5"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LimberDuck%2Fnessus-file-reader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LimberDuck%2Fnessus-file-reader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LimberDuck%2Fnessus-file-reader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LimberDuck%2Fnessus-file-reader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LimberDuck","download_url":"https://codeload.github.com/LimberDuck/nessus-file-reader/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225784703,"owners_count":17523694,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nessus","nessus-files","nessus-parser","nessus-report","nessus-scanner","security-tools","tenable","tenablesc"],"created_at":"2024-08-04T17:03:27.279Z","updated_at":"2025-07-12T02:31:46.270Z","avatar_url":"https://github.com/LimberDuck.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# nessus file reader (NFR)\n\n**nessus file reader** (`NFR`) by LimberDuck (pronounced *ˈlɪm.bɚ dʌk*) is a CLI tool \nand python module created to quickly parse nessus files containing the results \nof scans performed using Nessus and Tenable.sc by (C) Tenable, Inc. This module will let \nyou get data through functions grouped into categories like `file`, `scan`, `host` \nand `plugin` to get specific information from the provided nessus scan files.\n\n[![Latest Release version](https://img.shields.io/github/v/release/LimberDuck/nessus-file-reader?label=Latest%20release)](https://github.com/LimberDuck/nessus-file-reader/releases)\n[![GitHub Release Date](https://img.shields.io/github/release-date/limberduck/nessus-file-reader?label=released\u0026logo=GitHub)](https://github.com/LimberDuck/nessus-file-reader/releases)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/nessus-file-reader?logo=PyPI)](https://pypistats.org/packages/nessus-file-reader) [![License](https://img.shields.io/github/license/LimberDuck/nessus-file-reader.svg)](https://github.com/LimberDuck/nessus-file-reader/blob/master/LICENSE)\n[![Repo size](https://img.shields.io/github/repo-size/LimberDuck/nessus-file-reader.svg)](https://github.com/LimberDuck/nessus-file-reader)\n[![Code size](https://img.shields.io/github/languages/code-size/LimberDuck/nessus-file-reader.svg)](https://github.com/LimberDuck/nessus-file-reader)\n[![Supported platform](https://img.shields.io/badge/platform-windows%20%7C%20macos%20%7C%20linux-lightgrey.svg)](https://github.com/LimberDuck/nessus-file-reader)\n\n\u003e [!NOTE]\n\u003e **Visit [LimberDuck.org][LimberDuck] to find out more!**\n\n![](https://limberduck.org/en/latest/_images/nfr.png)\n\n## Main features\n\n* read data from nessus files containing results of scans performed by using Nessus and Tenable.sc by (C) Tenable, Inc.\n* use it in CLI to check quickly e.g. quality of your scan, split large scan results\n* use it as python module\n\n\u003e [!TIP]\n\u003e Check code [examples].\n\n\n## Installation\n\n\u003e [!NOTE]\n\u003e It's advisable to use python virtual environment for below instructions. Read more about python virtual environment in [The Hitchhiker’s Guide to Python!](https://docs.python-guide.org/dev/virtualenvs/)\n\u003e \n\u003eRead about [virtualenvwrapper in The Hitchhiker’s Guide to Python!](https://docs.python-guide.org/dev/virtualenvs/#virtualenvwrapper): [virtualenvwrapper](https://virtualenvwrapper.readthedocs.io) provides a set of commands which makes working with virtual environments much more pleasant.\n\n\nInstall **nessus file reader**\n    \n`pip install nessus-file-reader`\n\n\u003e To upgrade to newer version run:\n\u003e \n\u003e `pip install -U nessus-file-reader`\n\n\n## How to\n\n### Use nfr in CLI\n\n1. Run **nessus file reader**\n\n   `nfr`\n\n2. Check help for commands\n   \n   `nfr [command] --help` e.g. `nfr file --help`\n\n#### File command\n\nRun `nfr file --help` to see options related to nessus file.\n\n##### File size\n\nCheck size of given file:\n```commandline\nnfr file --size test_files/scan_avrx9t.nessus\nnessus file reader (NFR) by LimberDuck 0.4.2\ntest_files/scan_avrx9t.nessus 2.4 MiB\n```\n\nmore than one file:\n```commandline\nnfr file --size test_files/scan_avrx9t.nessus test_files/scan_ihc1js.nessus\nnessus file reader (NFR) by LimberDuck 0.4.2\ntest_files/scan_avrx9t.nessus 2.4 MiB\ntest_files/scan_ihc1js.nessus 5.0 MiB\n```\n\nall files in given directory and it's subdirectories:\n```commandline\nnfr file --size test_files  \nnessus file reader (NFR) by LimberDuck 0.4.2                                                      \ntest_files/scan_avrx9t.nessus 2.4 MiB\ntest_files/scan_ihc1js.nessus 5.0 MiB\ntest_files/test_subdirectory/scan_ihc1js.nessus 878.3 KiB\n```\n\n##### File structure\n\nCheck structure of given file:\n\n```commandline\nnfr file --structure test_files/scan_avrx9t.nessus\nnessus file reader (NFR) by LimberDuck 0.4.2\ntest_files/scan_avrx9t.nessus\nPolicy [2/2]\n├── policyName [3/3]\n├── Preferences [2/3]\n│   ├── ServerPreferences [1/1]\n│   │   ├── preference [54/54]\n│   │   │   ├── name [1/1]\n│   │   │   └── value [0/1]\n│   │   ├── preference [53/54]\n...\n│   └── PluginsPreferences [0/1]\n│       ├── item [506/506]\n│       │   ├── pluginName [6/6]\n│       │   ├── pluginId [5/6]\n│       │   ├── fullName [4/6]\n│       │   ├── preferenceName [3/6]\n│       │   ├── preferenceType [2/6]\n│       │   ├── preferenceValues [1/6]\n│       │   └── selectedValue [0/6]\n│       ├── item [505/506]\n...\n├── FamilySelection [1/3]\n│   ├── FamilyItem [53/53]\n│   │   ├── FamilyName [1/1]\n│   │   └── Status [0/1]\n│   ├── FamilyItem [52/53]\n│   │   ├── FamilyName [1/1]\n│   │   └── Status [0/1]\n...\n└── IndividualPluginSelection [0/3]\n│   ├── PluginItem [6/6]\n│   │   ├── PluginId [3/3]\n│   │   ├── PluginName [2/3]\n│   │   ├── Family [1/3]\n│   │   └── Status [0/3]\n...\nReport [1/2]\n└── ReportHost [0/0]\n    ├── HostProperties [409/409]\n    │   ├── tag [354/354]\n    │   ├── tag [353/354]\n...\n    ├── ReportItem [408/409]\n    │   ├── agent [12/12]\n    │   ├── description [11/12]\n    │   ├── fname [10/12]\n    │   ├── plugin_modification_date [9/12]\n    │   ├── plugin_name [8/12]\n    │   ├── plugin_publication_date [7/12]\n    │   ├── plugin_type [6/12]\n    │   ├── risk_factor [5/12]\n    │   ├── script_version [4/12]\n    │   ├── see_also [3/12]\n    │   ├── solution [2/12]\n    │   ├── synopsis [1/12]\n    │   └── plugin_output [0/12]\n...\n```\n\nCheck whole example structure [examples/scan_avrx9t_structure.txt](examples/scan_avrx9t_structure.txt).\n\n##### File split\n\nSplit the file with Nessus scan results into smaller files.\n\n```commandline\nnfr file --split 100 ./directory ./directory2\nnessus file reader (NFR) by LimberDuck 0.5.0\n./directory/192_168_8_0_24_3mf2o4.nessus\n./directory/192_168_8_0_24_3mf2o4_part1.nessus\n./directory/192_168_8_0_24_3mf2o4_part2.nessus\n./directory/192_168_8_0_24_3mf2o4_part3.nessus\n./directory/subdirectory/My_Advanced_Scan_for_192_168_8_0_24_rg2ny9.nessus\n./directory/subdirectory/My_Advanced_Scan_for_192_168_8_0_24_rg2ny9_part1.nessus\n./directory2/192_168_8_0_24_3mf2o4.nessus\n./directory2/192_168_8_0_24_3mf2o4_part1.nessus\n./directory2/192_168_8_0_24_3mf2o4_part2.nessus\n./directory2/192_168_8_0_24_3mf2o4_part3.nessus\n```\n\n#### Scan command\n\nRun `nfr scan --help` to see options related to content of nessus file on scan level.\n\n##### Scan summary\n\nSee scan summary of given file/-s or all files in given directory and it's subdirectories:\n\n```commandline\nnfr scan --scan-summary scan_avrx9t.nessus\nnessus file reader (NFR) by LimberDuck 0.4.2\nFile name           Report name     TH    SH    CC    C    H    M    L    N\n------------------  ------------  ----  ----  ----  ---  ---  ---  ---  ---\nscan_avrx9t.nessus  test scan        1     1     1   48  182  126   15   38\n```\n\n```commandline\nnfr scan --scan-summary-legend                              \nnessus file reader (NFR) by LimberDuck 0.4.2\nLegend for scan summary:\nFile name - nessus file name\nReport name - report name for given nessus file name\nTH - number of target hosts\nSH - number of scanned hosts\nCC - number of hosts scanned with credentials (Credentialed checks yes in Plugin ID 19506)\nC - number of plugins with Critical risk factor for whole scan\nH - number of plugins with High risk factor for whole scan\nM - number of plugins with Medium risk factor for whole scan\nL - number of plugins with Low risk factor for whole scan\nN - number of plugins with None risk factor for whole scan\n```\n\n##### Plugin severity\n\nCompare severity scores assigned to plugin like Severity, Risk Factor, CVSSv2, CVSSv3, CVSSv4, VPR, EPSS.\n\n```\nnfr scan --plugin-severity-legend                         \nnessus file reader (NFR) by LimberDuck 0.6.0\nLegend for plugin severity:\nFile name - nessus file name\nReport host name - target name used during scan\nPID - Plugin ID reported in scan\nS - Severity number (0-4) of plugin\nSL - Severity label of plugin (e.g. Critical, High, Medium, Low, None)\nRF - Risk factor of plugin (e.g. Critical, High, Medium, Low, None)\nCVSSv2 - CVSSv2 base score of plugin\nCVSSv2L - CVSSv2 base score label of plugin\nCVSSv3 - CVSSv3 base score of plugin\nCVSSv3L - CVSSv3 base score label of plugin\nCVSSv4 - CVSSv4 base score of plugin\nCVSSv4L - CVSSv4 base score label of plugin\nVPR - Vulnerability Priority Rating score of plugin\nVPRL - Vulnerability Priority Rating label of plugin\nEPSS - Exploit Prediction Scoring System score of plugin\nEPSS% - Exploit Prediction Scoring System score of plugin in percentage\n```\n\nJust point the name or path to nessus file with scan results.\n\n```\nnfr scan --plugin-severity 192_168_1_1_1022nb.nessus \nnessus file reader (NFR) by LimberDuck 0.6.0\nFile name                  Report host name       PID    S  SL      RF        CVSSv2  CVSSv2L      CVSSv3  CVSSv3L    CVSSv4    CVSSv4L      VPR  VPRL      EPSS  EPSS%\n-------------------------  ------------------  ------  ---  ------  ------  --------  ---------  --------  ---------  --------  ---------  -----  ------  ------  -------\n192_168_1_1_1022nb.nessus  192.168.1.10         12217    2  Medium  Medium       5    Medium          5.3  Medium\n192_168_1_1_1022nb.nessus  192.168.1.10         42263    2  Medium  Medium       5.8  Medium          6.5  Medium\n192_168_1_1_1022nb.nessus  192.168.1.10         50686    2  Medium  Medium       5.8  Medium          6.5  Medium                            4.9  Medium  0.0596  6.0%\n192_168_1_1_1022nb.nessus  192.168.1.10         10114    1  Low     Low          2.1  Low                                                    2.2  Low     0.0037  0.4%\n192_168_1_1_1022nb.nessus  192.168.1.10         10663    1  Low     Low          3.3  Low\n192_168_1_1_1022nb.nessus  192.168.1.10         70658    1  Low     Low          2.6  Low             3.7  Low                               1.4  Low     0.0307  3.1%\n192_168_1_1_1022nb.nessus  192.168.1.10         71049    1  Low     Low          2.6  Low\n192_168_1_1_1022nb.nessus  192.168.1.10        153953    1  Low     Low          2.6  Low             3.7  Low\n192_168_1_1_1022nb.nessus  192.168.1.10         10107    0  Info    None\n192_168_1_1_1022nb.nessus  192.168.1.10         10267    0  Info    None\n```\n\nUse `-f` or `--filter` to check only one Plugin ID among all scan results. Read more about [JMESPath](https://jmespath.org).\n\n```\nnfr scan --plugin-severity *.nessus -f \"[?PID == '50686']\"\nnessus file reader (NFR) by LimberDuck 0.6.0\nFile name                          Report host name      PID    S  SL      RF        CVSSv2  CVSSv2L      CVSSv3  CVSSv3L    CVSSv4    CVSSv4L      VPR  VPRL      EPSS  EPSS%\n---------------------------------  ------------------  -----  ---  ------  ------  --------  ---------  --------  ---------  --------  ---------  -----  ------  ------  -------\n192_168_1_1_1022nb-1.nessus          192.168.1.10        50686    2  Medium  Medium       5.8  Medium          6.5  Medium                            4.9  Medium  0.0596  6.0%\n192_168_1_1_1022nb-2.nessus          192.168.1.10        50686    2  Medium  Medium       5.8  Medium          6.5  Medium                            4.9  Medium  0.0596  6.0%\n```\n\nUse `-f` or `--filter` to check only these plugins which have VPR assigned. Read more about [JMESPath](https://jmespath.org).\n\n```\nnfr scan --plugin-severity 192_168_1_1_1022nb.nessus -f \"[?VPR != null]\"   \nnessus file reader (NFR) by LimberDuck 0.6.0\nFile name                  Report host name      PID    S  SL      RF        CVSSv2  CVSSv2L      CVSSv3  CVSSv3L    CVSSv4    CVSSv4L      VPR  VPRL      EPSS  EPSS%\n-------------------------  ------------------  -----  ---  ------  ------  --------  ---------  --------  ---------  --------  ---------  -----  ------  ------  -------\n192_168_1_1_1022nb.nessus  192.168.1.10        50686    2  Medium  Medium       5.8  Medium          6.5  Medium                            4.9  Medium  0.0596  6.0%\n192_168_1_1_1022nb.nessus  192.168.1.10        10114    1  Low     Low          2.1  Low                                                    2.2  Low     0.0037  0.4%\n192_168_1_1_1022nb.nessus  192.168.1.10        70658    1  Low     Low          2.6  Low             3.7  Low                               1.4  Low     0.0307  3.1%\n```\n\nUse `-f` or `--filter` to check only these plugins which have, e.g., CVSSv3 score greater than `4.0`. Read more about [JMESPath](https://jmespath.org).\n\n```\nnfr scan --plugin-severity 192_168_1_1_1022nb.nessus -f \"[?CVSSv3 \u003e '4.0']\"\nnessus file reader (NFR) by LimberDuck 0.6.0\nFile name                  Report host name      PID    S  SL      RF        CVSSv2  CVSSv2L      CVSSv3  CVSSv3L    CVSSv4    CVSSv4L      VPR  VPRL      EPSS  EPSS%\n-------------------------  ------------------  -----  ---  ------  ------  --------  ---------  --------  ---------  --------  ---------  -----  ------  ------  -------\n192_168_1_1_1022nb.nessus  192.168.1.10        12217    2  Medium  Medium       5    Medium          5.3  Medium\n192_168_1_1_1022nb.nessus  192.168.1.10        42263    2  Medium  Medium       5.8  Medium          6.5  Medium\n192_168_1_1_1022nb.nessus  192.168.1.10        50686    2  Medium  Medium       5.8  Medium          6.5  Medium                            4.9  Medium  0.0596  6.0%\n```\n\n\n##### Policy scan summary\n\nSee policy scan summary of given file/-s or all files in given directory and it's subdirectories:\n\n```commandline\nnfr scan --policy-summary scan_ihc1js.nessus scan_avrx9t.nessus\nnessus file reader (NFR) by LimberDuck 0.4.2\nFile name           Policy name      Max hosts    Max checks    Checks timeout    Plugins number\n------------------  -------------  -----------  ------------  ----------------  ----------------\nscan_ihc1js.nessus  Advanced Scan          100             5                 5            103203\nscan_avrx9t.nessus  Test                   100             5                 5            103949\n\n```\n\n##### Scan file source\n\nSee scan file source like Nessus, Tenable.sc, Tenable.io of given file/-s or all files in given directory and it's subdirectories:\n\n```commandline\nnfr scan --scan-file-source scan_ihc1js.nessus scan_avrx9t.nessus\nnessus file reader (NFR) by LimberDuck 0.4.2\nFile name           Source\n------------------  ----------\nscan_ihc1js.nessus  Tenable.sc\nscan_avrx9t.nessus  Nessus\n```\n\n### Use nfr as python module\n\n1. Import `nessus-file-reader` module.\n   \n```python\nimport nessus_file_reader as nfr\n```\n\n2. Use `file` functions to get details about provided file e.g. root, file name, file size.\n   \n```python\nimport nessus_file_reader as nfr\n\nnessus_scan_file = './your_nessus_file.nessus'\nroot = nfr.file.nessus_scan_file_root_element(nessus_scan_file)\nfile_name = nfr.file.nessus_scan_file_name_with_path(nessus_scan_file)\nfile_size = nfr.file.nessus_scan_file_size_human(nessus_scan_file)\nprint(f'File name: {file_name}')\nprint(f'File size: {file_size}')\n```\n\n3. Use `scan` functions to get details about provided scan e.g. report name, number of target/scanned/credentialed hosts, scan time start/end/elapsed and more.\n\n```python\nimport nessus_file_reader as nfr\nnessus_scan_file = './your_nessus_file.nessus'\nroot = nfr.file.nessus_scan_file_root_element(nessus_scan_file)\n\nreport_name = nfr.scan.report_name(root)\nnumber_of_target_hosts = nfr.scan.number_of_target_hosts(root)\nnumber_of_scanned_hosts = nfr.scan.number_of_scanned_hosts(root)\nnumber_of_scanned_hosts_with_credentialed_checks_yes = nfr.scan.number_of_scanned_hosts_with_credentialed_checks_yes(root)\nscan_time_start = nfr.scan.scan_time_start(root)\nscan_time_end = nfr.scan.scan_time_end(root)\nscan_time_elapsed = nfr.scan.scan_time_elapsed(root)\nprint(f' Report name: {report_name}')\nprint(f' Number of target/scanned/credentialed hosts: {number_of_target_hosts}/{number_of_scanned_hosts}/{number_of_scanned_hosts_with_credentialed_checks_yes}')\nprint(f' Scan time START - END (ELAPSED): {scan_time_start} - {scan_time_end} ({scan_time_elapsed})')\n```\n\n4. Use `host` functions to get details about hosts from provided scan e.g. report hosts names, operating system, hosts scan time start/end/elapsed, number of Critical/High/Medium/Low/None findings and more.\n\n```python\nimport nessus_file_reader as nfr\nnessus_scan_file = './your_nessus_file.nessus'\nroot = nfr.file.nessus_scan_file_root_element(nessus_scan_file)\n\nfor report_host in nfr.scan.report_hosts(root):\n   report_host_name = nfr.host.report_host_name(report_host)\n   report_host_os = nfr.host.detected_os(report_host)\n   report_host_scan_time_start = nfr.host.host_time_start(report_host)\n   report_host_scan_time_end = nfr.host.host_time_end(report_host)\n   report_host_scan_time_elapsed = nfr.host.host_time_elapsed(report_host)\n   report_host_critical = nfr.host.number_of_plugins_per_risk_factor(report_host, 'Critical')\n   report_host_high = nfr.host.number_of_plugins_per_risk_factor(report_host, 'High')\n   report_host_medium = nfr.host.number_of_plugins_per_risk_factor(report_host, 'Medium')\n   report_host_low = nfr.host.number_of_plugins_per_risk_factor(report_host, 'Low')\n   report_host_none = nfr.host.number_of_plugins_per_risk_factor(report_host, 'None')\n   print(f'  Report host name: {report_host_name}')\n   print(f'  Report host OS: {report_host_os}')\n   print(f'  Host scan time START - END (ELAPSED): {report_host_scan_time_start} - {report_host_scan_time_end} ({report_host_scan_time_elapsed})')\n   print(f'  Critical/High/Medium/Low/None findings: {report_host_critical}/{report_host_high}/{report_host_medium}/{report_host_low}/{report_host_none}')\n```\n\n5. Use `plugin` functions to get details about plugins reported in provided scan e.g. plugins ID, plugins risk factor, plugins name.\n\n```python\nimport nessus_file_reader as nfr\nnessus_scan_file = './your_nessus_file.nessus'\nroot = nfr.file.nessus_scan_file_root_element(nessus_scan_file)\n\nfor report_host in nfr.scan.report_hosts(root):\n   report_items_per_host = nfr.host.report_items(report_host)\n   for report_item in report_items_per_host:\n      plugin_id = int(nfr.plugin.report_item_value(report_item, 'pluginID'))\n      risk_factor = nfr.plugin.report_item_value(report_item, 'risk_factor')\n      plugin_name = nfr.plugin.report_item_value(report_item, 'pluginName')\n      print('\\t', plugin_id, '  \\t\\t\\t', risk_factor, '  \\t\\t\\t', plugin_name)\n```\n\n6. If you want to get output for interesting you plugin e.g. \"Nessus Scan Information\" use below function\n\n```python\nimport nessus_file_reader as nfr\nnessus_scan_file = './your_nessus_file.nessus'\nroot = nfr.file.nessus_scan_file_root_element(nessus_scan_file)\n\nfor report_host in nfr.scan.report_hosts(root):\n   pido_19506 = nfr.plugin.plugin_output(root, report_host, '19506')\n   print(f'Nessus Scan Information Plugin Output:\\n{pido_19506}')\n```\n\n7. If you know that interesting you plugin occurs more than ones for particular host e.g. \"Netstat Portscanner (SSH)\" use below function\n\n```python\nimport nessus_file_reader as nfr\nnessus_scan_file = './your_nessus_file.nessus'\nroot = nfr.file.nessus_scan_file_root_element(nessus_scan_file)\n\nfor report_host in nfr.scan.report_hosts(root):\n   pidos_14272 = nfr.plugin.plugin_outputs(root, report_host, '14272')\n   print(f'All findings for Netstat Portscanner (SSH): \\n{pidos_14272}')\n```\n\n## Meta\n\n### Change log\n\nSee [CHANGELOG].\n\n### Licence\n\nGNU GPLv3: [LICENSE].\n\n### Authors\n\n[Damian Krawczyk] created **[nessus file reader (NFR)]** by [LimberDuck].\n\n[nessus file reader (NFR)]: https://limberduck.org/en/latest/tools/nessus-file-reader\n[Damian Krawczyk]: https://damiankrawczyk.com\n[LimberDuck]: https://limberduck.org\n[CHANGELOG]: https://github.com/LimberDuck/nessus-file-reader/blob/master/CHANGELOG.md\n[LICENSE]: https://github.com/LimberDuck/nessus-file-reader/blob/master/LICENSE\n[examples]: https://github.com/LimberDuck/nessus-file-reader/tree/master/examples","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLimberDuck%2Fnessus-file-reader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLimberDuck%2Fnessus-file-reader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLimberDuck%2Fnessus-file-reader/lists"}