semvec/pypi-packages huggingface dataset:
netmikro 0.1.0
Netmikro is a simple library that provides an easy way to manage Mikrotik routers, simplifying configuration and monitoring tasks.
Requires Python: >=3.11,<4.0

<img src="docs/assets/netmikro.svg" width="100">

# Netmikro

Netmikro is a simple library that provides an easy way to manage Mikrotik routers, simplifying configuration and monitoring tasks.

Everything works through an instance of the RouterOS class that creates an SSH connection with the device, think of the instantiated object as your own router, this object has [methods](api/RouterOS.md) to interact with your router, or you can Run custom commands directly in your router's terminal with the `cmd()` method.

Netmikro is on the shoulders of the [Netmiko](https://github.com/ktbyers/netmiko) project, responsible for creating a connection via SSH with the Mikrotik router.

> 📝 **Note:** I'm just a computer networking enthusiast and have experience with handling MIkrotik routers. All Netmikro features are being tested during development with a Mikrotik RB912UAG-5HPn router. The idea is to test it on other models as soon as possible.

---

**Documentation**: [https://netmikro.henriquesebastiao.com](https://netmikro.henriquesebastiao.com)

**Source Code**: [https://github.com/henriquesebastiao/netmikro](https://github.com/henriquesebastiao/netmikro)

---

## How to install

Netmikro is available on PyPi, so just use your preferred package manager:

``` {.bash .copy }
pip install netmikro
```

## Basic usage

You just need to create an instance of RouterOS to use Netmikro features:

```Python
from netmikro import RouterOS


router = RouterOS(
    '192.168.3.3',
    'user',
    'password',
    22,
)

router.cmd('/system identity print')
```

## License

This project is licensed under the terms of the [MIT license](LICENSE).
py-dmidecode 0.1.3
python library to parse the output of dmidecode
Requires Python: >=3.8.1,<4.0
Keywords: system development

# py-dmidecode [![codecov](https://codecov.io/gh/zaibon/py-dmidecode/branch/master/graph/badge.svg?token=uIHftzfsHn)](https://codecov.io/gh/zaibon/py-dmidecode) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/zaibon/py-dmidecode/badge)](https://securityscorecards.dev/viewer/?uri=github.com/zaibon/py-dmidecode)


Small tool that parses output of dmidecode command

## How to use

```python
from dmidecode import DMIDecode

# create parsing instance by passing dmidecode output
dmi = DMIDecode()

# some of the pre-defined queries
print('Manufacturer:\t', dmi.manufacturer())
print('Model:\t\t', dmi.model())
print('Firmware:\t', dmi.firmware())
print('Serial number:\t', dmi.serial_number())
print('Processor type:\t', dmi.cpu_type())
print('Number of CPUs:\t', dmi.cpu_num())
print('Cores count:\t', dmi.total_enabled_cores())
print('Total RAM:\t{} GB'.format(dmi.total_ram()))
```

Alternatively instead of running dmidecode locally you can use DMIParse by passing dmidecode output as an argument:

```python
from dmidecode import DMIParse
dmi = DMIParse(raw)
```

Other information can be easily retrieved by analyzing dmi.data and module code.

## Possible limitations

Tested with dmidecode versions 2.11, 2.12 and 3.2
superscraper 0.3.11
the friendliest scraper around
Requires Python: >=3.8,<4.0

# Super Scraper
Scraping couldn't get much easier.  

**Super Scraper** is built with ease in mind - for those hard to scrape places. It drives with Selenium and parses with BeautifulSoup4. I've provided some convenience methods to make common actions even easier for you.

# Example

```
from superscraper import SuperScraper, ScraperOptions, Browser, By

options = ScraperOptions()
options.show_process = True 
options.incognito = True 

scraper = SuperScraper(
    browser=Browser.CHROME,
    options=options)

scraper.search('https://www.google.com')
scraper.fill_in(By.NAME, 'q', 'hello world')
scraper.click(By.NAME, 'btnK')

search_results = scraper.driver.find_elements(By.CLASS_NAME, 'g')
for result in search_results[:3]:

    title = scraper.attempt(result.find_element, By.TAG_NAME, 'h3')
    if title:
        print(title.text)
        a = result.find_element(By.TAG_NAME, 'a')
        scraper.open_new_tab(By.LINK_TEXT, a.text)
        scraper.close_current_tab(switch_to_tab=-1)
```