semvec/pypi-packages huggingface dataset:
netsparker-api 0.2
An interface to Netsparker REST API
License: MIT
Keywords: netsparker netsparker_api netsparker_rest netsparker_enterprise netsparker_team


# A REST interface to Netsparker
[![PyPI Version](https://badge.fury.io/py/netsparker-api.svg)](https://pypi.python.org/pypi/netsparker_api)
### Dependencies:

* Netsparker Team or Enterprise License (Not working with standard license)
* Python 3.3+
* requests module (install via pip)
* The dependencies can be satisfied via `pip install -r requirements.txt`

### Quick Install
```
pip install netsparker-api
```
### API Documentations:
```
https://www.netsparkercloud.com/docs/index
```
### Some examples:

* Get your account information.

```python 
  from netsparker_api import Netsparker_Account

  credentials = {
  "API_ROOT": "https://www.netsparkercloud.com/api/1.0/%s",
  "USER_ID": "NETSPARKER CLOUD API USER_ID GOES HERE",
  "API_TOKEN": "NETSPARKER CLOUD API API_TOKEN GOES HERE"
  }

  my_info = Netsparker_Account.Account.me(credentials)
  print(my_info)
```

* Schedules a scan to be launched in the future.

```python
  from netsparker_api import Netsparker_Scans

  credentials = {
  "API_ROOT": "https://www.netsparkercloud.com/api/1.0/%s",
  "USER_ID": "NETSPARKER CLOUD API USER_ID GOES HERE",
  "API_TOKEN": "NETSPARKER CLOUD API API_TOKEN GOES HERE"
  }

  data = {
  "Name": "Scheduled Scan-1",
  "NextExecutionTime": "15/05/2020 10:20 PM",
  "ScheduleRunType": "Weekly",
  "CustomRecurrence": {
    "RepeatType": "Weeks",
    "Interval": 1,
    "EndingType": "Never",
    "DaysOfWeek": [
      "Friday"
    ],
    "EndOn": "21/07/2022 10:42 PM"
  },
  "TargetUri": "http://php.testsparker.com/",
  "Cookies": "name1=value1; name2=value2",
  "CrawlAndAttack": "true",
  "EnableHeuristicChecksInCustomUrlRewrite": "true",
  }

  schedule_scan = Netsparker_Scans.Scans.schedule(credentials, data)
  print(schedule_scan)
```

* Returns the custom report of a scan in the specified format.

```python
  from netsparker_api import Netsparker_Scans

  credentials = {
  "API_ROOT": "https://www.netsparkercloud.com/api/1.0/%s",
  "USER_ID": "NETSPARKER CLOUD API USER_ID GOES HERE",
  "API_TOKEN": "NETSPARKER CLOUD API API_TOKEN GOES HERE"
  }

  data = {
  "id": "8705818b4fc644a33957ab9c01765d06",
  "reportName": "ScheduledScan-1Report ",
  "onlyConfirmedVulnerabilities": "false",
  "excludeIgnoreds": "false",
  "reportFormat": "Json"
  }

  report_csv = Netsparker_Scans.Scans.custom_report(credentials, data)
  print(report_csv)
```

### Building modules:

* To build a package to install via `pip` or `easy_install`, execute:
    * `python setup.py sdist`
* The resulting build will be in `$PWD/dist/Netsparker_Rest_API-<version>.tar.gz`
eniam 1.0
Cross-platform python wrapper around ENIAM (http://eniam.nlp.ipipan.waw.pl/)
License: MIT

# Cross-platform ENIAM with useful bindings :rocket:

This project provides only a wrapper for ENIAM ([see online](http://eniam.nlp.ipipan.waw.pl/) [source code](http://git.nlp.ipipan.waw.pl/wojciech.jaworski/ENIAM))
Author of original code is Wojciech Jaworski.

### Using eniam library

1. First, you have to install eniam by calling `pip install eniam`
2. Then you can try parsing some example phrases (see `examples/example.ipynb`):

```python
# !pip install opencv-python
# !pip install camelot-py
# !pip install wand
from eniam import *

dom_result = Eniam(['KOT', 'MYSZ'], {
    rule(lemma='kot',pos=subst,case=nom):     gram('KOT'),
    rule(lemma='gonić',pos=fin,person=ter):   (ip<gram('KOT'))>gram('MYSZ'),
    rule(lemma='mysz',pos=subst,case=acc):    gram('MYSZ'),
    root_rule():                                  s % ip,
}, ['KOT', 'MYSZ', 'ZDARZENIE'], {
    valence_rule('kot', 'noun'): 'KOT',
    valence_rule('mysz', 'noun'): 'MYSZ',
    valence_rule('gonić', 'verb'): 'ZDARZENIE',
}).dom("Kot goni mysz.")

dom_result.show()
```

## Eniam syntax

The eniam library uses custom primitive AST the most of the operations looks exactly the same as in normal ENIAM convensions except for those modifications:
1. `/` is replaced with `>`
2. `\` is replaced with `<`
3. `ip{ |x1, |x2, |x3... |xn} ` is replaced with `ip[ x1 | x2 | ... | xn]`
4. `?x` is replaced with function `optional(x)`
5. `a\?(x)` is replaced with `a % x`
6. the grammar can contain inline literals created using `gram()` function for example `rule(lemma='kot',pos=subst): gram('np/np\\np'),` would be a valid rule.

## Useful methods

1. Showing the result in Jupyter notebook
`Eniam(...).dom("Kot goni mysz.").show()`
2. Getting the html code
`Eniam(...).dom("Kot goni mysz.").html()`
3. Saving the html code
`Eniam(...).dom("Kot goni mysz.").save_html('output_file')`
4. Multiple input sentences
1. Showing the result in Jupyter notebook
`Eniam(...).dom(["Kot goni mysz.", "Mysz goni kota."]).show()`

### Using raw ENIAM interface

## Running inside docker

To run ENIAM docker please use the following commands:
```bash
    # Run subsyntax tool
    $ docker run -it styczynski/eniam:1.0 /root/subsyntax --help
    # Run lexicon printer
    $ docker run -it styczynski/eniam:1.0 /root/print_lexicon --help
    # Run DOM parser
    $ docker run -it styczynski/eniam:1.0 /root/domparser --help
```

## Running with Python wrapper

You can install Python wrapper to get a nice wrapper around the docker container (this requires Python +3 and Docker installed):
```bash
    $ pip install eniam
    $ eniam-cli sub --help
    $ eniam-cli lex --help
    $ eniam-cli dom --help
```

**Note:** Before installing you may wish to add python /bin/ directory to the PATH variable.
On MacOS for Python 3.7 that would be:
```bash
    $ export PATH="$PATH:/usr/local/Cellar/python/3.7.5/Frameworks/Python.framework/Versions/3.7/bin"
```
See [setting up Python PATH](https://www.tutorialspoint.com/python/python_environment.htm)