Automate online browsing using python and AI
Project description
PyBA - Python Browser Automations
This is a browser automation software written in python. It can visit any website, automate testing, repetitive tasks, form filling and more.
Idea
This library will allow you to run an inhouse playwright instance and automate any task. These tasks can be related to web-scraping, OSINT (OpenSource INTelligence), online shopping, form filling etc.
This is built on top of playwright and it requires either VertexAI or OpenAI API keys to do the "thinking" part of the process. The library also contains support to automatically login to your social media sites (you'll have to provide a username and password! Check the the usage section for more on that) so you can use it for SOCmint or simple automated social media interactions as well.
Why?
The need for such a software came when I was building a fully automated intelligence framework. The goal is to replicate everything a human can do on the internet, and automate that process. This tool will employ all sorts of anti-bot detection and anti-fingerprinting techniques (I am still learning about them...) and will make sure that nothing halts the automation.
Installation
The library can be installed via pip:
pip install py-browser-automation
or you can install it from the source:
git clone https://github.com/FauvidoTechnologies/PyBrowserAutomation/
cd PyBrowserAutomation
pip install .
Usage
- Import the main engine using:
from pyba import Engine
- Set the right configurations depending on which model you want to use:
For VertexAI
engine = Engine(vertexai_project_id="", vertexai_server_location="", handle_dependencies=False)
For OpenAI
engine = Engine(openai_api_key="", handle_dependencies=False)
-
Set
handle_dependenciestoTrueif you're running this for the first time and install the playwright browsers and other dependencies by following the instructions. -
Run the
syncendpoint usingengine.sync_run()
engine.sync_run(prompt="open instagram", automated_login_sites=["instagram"])
You can set the
automated_login_sitesargument as whichever website you want to automatially login to.
This is useful in case of OSINT when you inevitably come across a profile that is hidden behind the login wall. Setting that field will trigger the login scripts to run after it verifies the site.
If you don't want to automatically login, don't set this value. The default behavior is to not do any such thing.
- We also have an async endpoint if you need. That can be called using just
.run()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_browser_automation-0.1.6.tar.gz.
File metadata
- Download URL: py_browser_automation-0.1.6.tar.gz
- Upload date:
- Size: 20.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b1fe62c63a1493c7e5a0fc2a5c75966d39444d956f28dca2cf717411b4c2fcf
|
|
| MD5 |
899aa28f6c3a1eb55630cd0522e6652f
|
|
| BLAKE2b-256 |
8b5ffc5ddd116abdbf76e8d40cb942d6d8d732ecf218bacd1b431c4e3c6e0dfb
|
File details
Details for the file py_browser_automation-0.1.6-py3-none-any.whl.
File metadata
- Download URL: py_browser_automation-0.1.6-py3-none-any.whl
- Upload date:
- Size: 27.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
061bdd3a43913ae08904652cfa48bf9d002fe1f8809fa0e65a52c2572425e908
|
|
| MD5 |
bd998bda810718a60ddbd49d616fdd79
|
|
| BLAKE2b-256 |
404cde5174d2756169288dbb1cc9643b11025ca147225ba26bbb9653da48ca8e
|