Library for website analysis and requests.
Project description
About WebPT
WebPT is a library for analyzing and crawling websites, the library is designed to be used by Pentesters and developers to make their code easier.
Installation
git clone https://github.com/saharavitan/webpt.git
python -m pip install webpt
Recommended Python Version:
WebPT currently supports Python 3
- The recommended version for Python 3 is >=3.6.x
Dependencies:
WebPT depends on the re
, requests
, bs4
, urllib
, threading
and time
python modules.
These dependencies can be installed using the requirements file:
- Installation on Windows:
c:\python38\python.exe -m pip install -r requirements.txt
- Installation on Linux
sudo pip install -r requirements.txt
Make Request Attributes
Attributes | Description |
---|---|
request | Create a request |
Find Functions
Functions | Description |
---|---|
tag | Exports all found objects, some tag must be written in the function |
attr | Exports the value of the attribute from the tag |
mails | Get mails from source |
Request Analysis Attributes
Attributes | Description |
---|---|
method | Type of method |
protocol | Type of protocol (GET, POST...) |
url | Get url |
data | Returns the data from the request within a dictionary |
cookies | Returns the data from the cookies within a dictionary |
headers | Returns the data from the headers within a dictionary |
params | Returns the data from the params within a dictionary |
path | The path of the url |
status_code | The status code of the response |
response | The content of the response |
redirect | To which address the server will redirect |
Spider Attributes
- The spider is a tool that is used to automatically discover new resources (URLs) on a particular Site.
Attributes | Description |
---|---|
links | Exports all links found to the list |
gui | Graphic display of the site |
Examples
Using WebPT as a module in your python scripts
MakeRequest Example
import webpt
request = webpt.make_request(url, method='POST', data="param1=val1¶m2=val2").request
import webpt
request = webpt.make_request(url).request
Spider Example
import webpt
get_links = webpt.spider("https://example.com").links
import webpt
print(webpt.spider("https://example.com").gui)
Response Analysis Example
import webpt
tags = find(source).tag("a")
for tag in tags:
res = tag.attr("href")
import webpt
mails = find(source).mails()
PortScanner Example
import webpt
ports = webpt.scanport(url/ip)
Request Analysis Example
import webpt
request = """POST /api/scope.php HTTP/1.1
Host: example.com
Connection: close
Content-Length: 69
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: https://example.com
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer: https://example.com/
Accept-Encoding: gzip, deflate
Accept-Language: he-IL,he;q=0.9,en-US;q=0.8,en;q=0.7
Cookie: __cfduid=d77a6a7e8c8303932379a959c941da11a1604046519; PHPSESSID=fpehjl7lamt1akovf990bd2gfl
csrf=3dff02bd9e7f4d014ff7218d2f3a80dc&target=https%3A%2F%2Fexample.co.il"""
req = webpt.request_analysis(request)
method = req.method
protocol = req.protocol
url = req.url
data = req.data
headers = req.headers
params = req.params
path = req.path
status_code = req.status_code
response = req.response
redirect = req.redirect
Author
Version
Current version is 1.2.7
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
Webpt-1.2.7.tar.gz
(7.7 kB
view details)
Built Distribution
Webpt-1.2.7-py3-none-any.whl
(9.5 kB
view details)
File details
Details for the file Webpt-1.2.7.tar.gz
.
File metadata
- Download URL: Webpt-1.2.7.tar.gz
- Upload date:
- Size: 7.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.23.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66d7c7eacdb96d324e95684d20b7cdd96a025f2c0f0f19922e3839d66d7d6caf |
|
MD5 | 91c326fc97ee462164e74a5babaa106a |
|
BLAKE2b-256 | 793171b3c954e526d24c738b96ff0fc3844e78ac6f4956d5f5f4644912726b0e |
File details
Details for the file Webpt-1.2.7-py3-none-any.whl
.
File metadata
- Download URL: Webpt-1.2.7-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.23.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f298d2e0d135f4bb1d8754c24b16d7531c18f8f12292fcae158b60e4975072f5 |
|
MD5 | e3d2e17367858b37b702f9a192bc2309 |
|
BLAKE2b-256 | 962e472351092352d153297aa1f1781ad1af327917144431561d494eed8e32e8 |