geekflare-api 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- geekflare_api-0.1.0/LICENSE +21 -0
- geekflare_api-0.1.0/PKG-INFO +86 -0
- geekflare_api-0.1.0/README.md +63 -0
- geekflare_api-0.1.0/geekflare_api/__init__.py +215 -0
- geekflare_api-0.1.0/geekflare_api/api/__init__.py +5 -0
- geekflare_api-0.1.0/geekflare_api/api/api_tool_api.py +4780 -0
- geekflare_api-0.1.0/geekflare_api/api_client.py +804 -0
- geekflare_api-0.1.0/geekflare_api/api_response.py +21 -0
- geekflare_api-0.1.0/geekflare_api/client.py +91 -0
- geekflare_api-0.1.0/geekflare_api/configuration.py +626 -0
- geekflare_api-0.1.0/geekflare_api/exceptions.py +218 -0
- geekflare_api-0.1.0/geekflare_api/models/__init__.py +99 -0
- geekflare_api-0.1.0/geekflare_api/models/base_error_response_dto.py +103 -0
- geekflare_api-0.1.0/geekflare_api/models/broken_link_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/broken_link_meta_dto.py +100 -0
- geekflare_api-0.1.0/geekflare_api/models/broken_link_response_dto.py +115 -0
- geekflare_api-0.1.0/geekflare_api/models/broken_link_summary_dto.py +96 -0
- geekflare_api-0.1.0/geekflare_api/models/default_extraction_field_dto.py +90 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_meta_dto.py +103 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_record_dto.py +101 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_record_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_sec_data_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_sec_dto.py +88 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_sec_meta_dto.py +94 -0
- geekflare_api-0.1.0/geekflare_api/models/dns_sec_response_dto.py +111 -0
- geekflare_api-0.1.0/geekflare_api/models/extraction_schema_dto.py +100 -0
- geekflare_api-0.1.0/geekflare_api/models/extraction_schema_dto_fields_inner.py +137 -0
- geekflare_api-0.1.0/geekflare_api/models/health_response_dto.py +101 -0
- geekflare_api-0.1.0/geekflare_api/models/image_search_response_dto.py +115 -0
- geekflare_api-0.1.0/geekflare_api/models/image_search_result_item_dto.py +96 -0
- geekflare_api-0.1.0/geekflare_api/models/lighthouse_dto.py +106 -0
- geekflare_api-0.1.0/geekflare_api/models/lighthouse_meta_dto.py +109 -0
- geekflare_api-0.1.0/geekflare_api/models/lighthouse_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/load_time_data_dto.py +122 -0
- geekflare_api-0.1.0/geekflare_api/models/load_time_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/load_time_meta_dto.py +100 -0
- geekflare_api-0.1.0/geekflare_api/models/load_time_response_dto.py +113 -0
- geekflare_api-0.1.0/geekflare_api/models/margin_dto.py +94 -0
- geekflare_api-0.1.0/geekflare_api/models/meta_scrape_dto.py +120 -0
- geekflare_api-0.1.0/geekflare_api/models/meta_scrape_meta_dto.py +120 -0
- geekflare_api-0.1.0/geekflare_api/models/meta_scrape_response_dto.py +111 -0
- geekflare_api-0.1.0/geekflare_api/models/meta_scrape_response_dto_data.py +143 -0
- geekflare_api-0.1.0/geekflare_api/models/mixed_content_data_dto.py +90 -0
- geekflare_api-0.1.0/geekflare_api/models/mixed_content_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/mixed_content_meta_dto.py +100 -0
- geekflare_api-0.1.0/geekflare_api/models/mixed_content_response_dto.py +113 -0
- geekflare_api-0.1.0/geekflare_api/models/mixed_content_response_dto_data.py +140 -0
- geekflare_api-0.1.0/geekflare_api/models/mtr_data_dto.py +106 -0
- geekflare_api-0.1.0/geekflare_api/models/mtr_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/mtr_meta_dto.py +100 -0
- geekflare_api-0.1.0/geekflare_api/models/mtr_response_dto.py +115 -0
- geekflare_api-0.1.0/geekflare_api/models/network_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/open_port_dto.py +102 -0
- geekflare_api-0.1.0/geekflare_api/models/open_port_meta_dto.py +108 -0
- geekflare_api-0.1.0/geekflare_api/models/open_port_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/ping_data_dto.py +102 -0
- geekflare_api-0.1.0/geekflare_api/models/ping_dto.py +88 -0
- geekflare_api-0.1.0/geekflare_api/models/ping_meta_dto.py +94 -0
- geekflare_api-0.1.0/geekflare_api/models/ping_response_dto.py +111 -0
- geekflare_api-0.1.0/geekflare_api/models/protocol_support_dto.py +96 -0
- geekflare_api-0.1.0/geekflare_api/models/redirect_check_dto.py +90 -0
- geekflare_api-0.1.0/geekflare_api/models/redirect_check_meta_dto.py +96 -0
- geekflare_api-0.1.0/geekflare_api/models/redirect_check_response_dto.py +115 -0
- geekflare_api-0.1.0/geekflare_api/models/redirect_hop_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/screenshot_dto.py +157 -0
- geekflare_api-0.1.0/geekflare_api/models/screenshot_meta_dto.py +132 -0
- geekflare_api-0.1.0/geekflare_api/models/screenshot_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/search200_response.py +165 -0
- geekflare_api-0.1.0/geekflare_api/models/search_html_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/search_markdown_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/search_meta_dto.py +106 -0
- geekflare_api-0.1.0/geekflare_api/models/search_request_dto.py +139 -0
- geekflare_api-0.1.0/geekflare_api/models/search_response_dto.py +115 -0
- geekflare_api-0.1.0/geekflare_api/models/search_result_item_dto.py +98 -0
- geekflare_api-0.1.0/geekflare_api/models/selector_extraction_field_dto.py +105 -0
- geekflare_api-0.1.0/geekflare_api/models/service_health_response_dto.py +111 -0
- geekflare_api-0.1.0/geekflare_api/models/service_status.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/site_status_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/site_status_meta_dto.py +100 -0
- geekflare_api-0.1.0/geekflare_api/models/site_status_response_dto.py +109 -0
- geekflare_api-0.1.0/geekflare_api/models/test_meta_dto.py +88 -0
- geekflare_api-0.1.0/geekflare_api/models/timings_dto.py +104 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_certificate_dto.py +98 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_certificate_issuer_dto.py +92 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_protocols_dto.py +94 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_scan_data_dto.py +98 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_scan_dto.py +88 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_scan_meta_dto.py +94 -0
- geekflare_api-0.1.0/geekflare_api/models/tls_scan_response_dto.py +111 -0
- geekflare_api-0.1.0/geekflare_api/models/url2_pdf_dto.py +140 -0
- geekflare_api-0.1.0/geekflare_api/models/url2_pdf_meta_dto.py +110 -0
- geekflare_api-0.1.0/geekflare_api/models/url2_pdf_response_dto.py +107 -0
- geekflare_api-0.1.0/geekflare_api/models/web_scrape_dto.py +143 -0
- geekflare_api-0.1.0/geekflare_api/models/web_scrape_meta_dto.py +133 -0
- geekflare_api-0.1.0/geekflare_api/models/web_scrape_response_dto.py +111 -0
- geekflare_api-0.1.0/geekflare_api/py.typed +0 -0
- geekflare_api-0.1.0/geekflare_api/rest.py +263 -0
- geekflare_api-0.1.0/geekflare_api.egg-info/PKG-INFO +86 -0
- geekflare_api-0.1.0/geekflare_api.egg-info/SOURCES.txt +188 -0
- geekflare_api-0.1.0/geekflare_api.egg-info/dependency_links.txt +1 -0
- geekflare_api-0.1.0/geekflare_api.egg-info/requires.txt +4 -0
- geekflare_api-0.1.0/geekflare_api.egg-info/top_level.txt +1 -0
- geekflare_api-0.1.0/pyproject.toml +25 -0
- geekflare_api-0.1.0/setup.cfg +7 -0
- geekflare_api-0.1.0/setup.py +48 -0
- geekflare_api-0.1.0/test/test_api_tool_api.py +150 -0
- geekflare_api-0.1.0/test/test_base_error_response_dto.py +59 -0
- geekflare_api-0.1.0/test/test_broken_link_dto.py +54 -0
- geekflare_api-0.1.0/test/test_broken_link_meta_dto.py +62 -0
- geekflare_api-0.1.0/test/test_broken_link_response_dto.py +84 -0
- geekflare_api-0.1.0/test/test_broken_link_summary_dto.py +60 -0
- geekflare_api-0.1.0/test/test_default_extraction_field_dto.py +54 -0
- geekflare_api-0.1.0/test/test_dns_meta_dto.py +58 -0
- geekflare_api-0.1.0/test/test_dns_record_dto.py +53 -0
- geekflare_api-0.1.0/test/test_dns_record_response_dto.py +66 -0
- geekflare_api-0.1.0/test/test_dns_sec_data_dto.py +54 -0
- geekflare_api-0.1.0/test/test_dns_sec_dto.py +52 -0
- geekflare_api-0.1.0/test/test_dns_sec_meta_dto.py +56 -0
- geekflare_api-0.1.0/test/test_dns_sec_response_dto.py +70 -0
- geekflare_api-0.1.0/test/test_extraction_schema_dto.py +59 -0
- geekflare_api-0.1.0/test/test_extraction_schema_dto_fields_inner.py +68 -0
- geekflare_api-0.1.0/test/test_health_response_dto.py +58 -0
- geekflare_api-0.1.0/test/test_image_search_response_dto.py +90 -0
- geekflare_api-0.1.0/test/test_image_search_result_item_dto.py +60 -0
- geekflare_api-0.1.0/test/test_lighthouse_dto.py +56 -0
- geekflare_api-0.1.0/test/test_lighthouse_meta_dto.py +63 -0
- geekflare_api-0.1.0/test/test_lighthouse_response_dto.py +72 -0
- geekflare_api-0.1.0/test/test_load_time_data_dto.py +108 -0
- geekflare_api-0.1.0/test/test_load_time_dto.py +54 -0
- geekflare_api-0.1.0/test/test_load_time_meta_dto.py +60 -0
- geekflare_api-0.1.0/test/test_load_time_response_dto.py +95 -0
- geekflare_api-0.1.0/test/test_margin_dto.py +54 -0
- geekflare_api-0.1.0/test/test_meta_scrape_dto.py +58 -0
- geekflare_api-0.1.0/test/test_meta_scrape_meta_dto.py +67 -0
- geekflare_api-0.1.0/test/test_meta_scrape_response_dto.py +76 -0
- geekflare_api-0.1.0/test/test_meta_scrape_response_dto_data.py +50 -0
- geekflare_api-0.1.0/test/test_mixed_content_data_dto.py +54 -0
- geekflare_api-0.1.0/test/test_mixed_content_dto.py +54 -0
- geekflare_api-0.1.0/test/test_mixed_content_meta_dto.py +59 -0
- geekflare_api-0.1.0/test/test_mixed_content_response_dto.py +72 -0
- geekflare_api-0.1.0/test/test_mixed_content_response_dto_data.py +54 -0
- geekflare_api-0.1.0/test/test_mtr_data_dto.py +70 -0
- geekflare_api-0.1.0/test/test_mtr_dto.py +54 -0
- geekflare_api-0.1.0/test/test_mtr_meta_dto.py +60 -0
- geekflare_api-0.1.0/test/test_mtr_response_dto.py +70 -0
- geekflare_api-0.1.0/test/test_network_dto.py +55 -0
- geekflare_api-0.1.0/test/test_open_port_dto.py +54 -0
- geekflare_api-0.1.0/test/test_open_port_meta_dto.py +58 -0
- geekflare_api-0.1.0/test/test_open_port_response_dto.py +72 -0
- geekflare_api-0.1.0/test/test_ping_data_dto.py +66 -0
- geekflare_api-0.1.0/test/test_ping_dto.py +52 -0
- geekflare_api-0.1.0/test/test_ping_meta_dto.py +56 -0
- geekflare_api-0.1.0/test/test_ping_response_dto.py +80 -0
- geekflare_api-0.1.0/test/test_protocol_support_dto.py +59 -0
- geekflare_api-0.1.0/test/test_redirect_check_dto.py +53 -0
- geekflare_api-0.1.0/test/test_redirect_check_meta_dto.py +58 -0
- geekflare_api-0.1.0/test/test_redirect_check_response_dto.py +76 -0
- geekflare_api-0.1.0/test/test_redirect_hop_dto.py +56 -0
- geekflare_api-0.1.0/test/test_screenshot_dto.py +71 -0
- geekflare_api-0.1.0/test/test_screenshot_meta_dto.py +82 -0
- geekflare_api-0.1.0/test/test_screenshot_response_dto.py +102 -0
- geekflare_api-0.1.0/test/test_search200_response.py +76 -0
- geekflare_api-0.1.0/test/test_search_html_response_dto.py +76 -0
- geekflare_api-0.1.0/test/test_search_markdown_response_dto.py +78 -0
- geekflare_api-0.1.0/test/test_search_meta_dto.py +68 -0
- geekflare_api-0.1.0/test/test_search_request_dto.py +62 -0
- geekflare_api-0.1.0/test/test_search_response_dto.py +92 -0
- geekflare_api-0.1.0/test/test_search_result_item_dto.py +60 -0
- geekflare_api-0.1.0/test/test_selector_extraction_field_dto.py +71 -0
- geekflare_api-0.1.0/test/test_service_health_response_dto.py +70 -0
- geekflare_api-0.1.0/test/test_service_status.py +56 -0
- geekflare_api-0.1.0/test/test_site_status_dto.py +54 -0
- geekflare_api-0.1.0/test/test_site_status_meta_dto.py +61 -0
- geekflare_api-0.1.0/test/test_site_status_response_dto.py +72 -0
- geekflare_api-0.1.0/test/test_test_meta_dto.py +52 -0
- geekflare_api-0.1.0/test/test_timings_dto.py +68 -0
- geekflare_api-0.1.0/test/test_tls_certificate_dto.py +64 -0
- geekflare_api-0.1.0/test/test_tls_certificate_issuer_dto.py +56 -0
- geekflare_api-0.1.0/test/test_tls_protocols_dto.py +58 -0
- geekflare_api-0.1.0/test/test_tls_scan_data_dto.py +70 -0
- geekflare_api-0.1.0/test/test_tls_scan_dto.py +52 -0
- geekflare_api-0.1.0/test/test_tls_scan_meta_dto.py +56 -0
- geekflare_api-0.1.0/test/test_tls_scan_response_dto.py +68 -0
- geekflare_api-0.1.0/test/test_url2_pdf_dto.py +65 -0
- geekflare_api-0.1.0/test/test_url2_pdf_meta_dto.py +70 -0
- geekflare_api-0.1.0/test/test_url2_pdf_response_dto.py +76 -0
- geekflare_api-0.1.0/test/test_web_scrape_dto.py +67 -0
- geekflare_api-0.1.0/test/test_web_scrape_meta_dto.py +85 -0
- geekflare_api-0.1.0/test/test_web_scrape_response_dto.py +84 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Geekflare
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: geekflare-api
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Official Python SDK for Geekflare API
|
|
5
|
+
Home-page:
|
|
6
|
+
Author: OpenAPI Generator community
|
|
7
|
+
Author-email: Geekflare <support@geekflare.com>
|
|
8
|
+
License: MIT
|
|
9
|
+
Project-URL: Homepage, https://github.com/geekflare/geekflare-api-python
|
|
10
|
+
Project-URL: Documentation, https://docs.geekflare.com/api/intro
|
|
11
|
+
Project-URL: Repository, https://github.com/geekflare/geekflare-api-python
|
|
12
|
+
Project-URL: Issues, https://github.com/geekflare/geekflare-api-python/issues
|
|
13
|
+
Keywords: geekflare,api,sdk,scraping,screenshot,dns,search
|
|
14
|
+
Requires-Python: >=3.8
|
|
15
|
+
Description-Content-Type: text/markdown
|
|
16
|
+
License-File: LICENSE
|
|
17
|
+
Requires-Dist: urllib3>=1.25.3
|
|
18
|
+
Requires-Dist: python-dateutil>=2.8.2
|
|
19
|
+
Requires-Dist: pydantic>=2.0.0
|
|
20
|
+
Requires-Dist: typing-extensions>=4.7.1
|
|
21
|
+
Dynamic: author
|
|
22
|
+
Dynamic: license-file
|
|
23
|
+
|
|
24
|
+
# geekflare-api
|
|
25
|
+
|
|
26
|
+
Official Python SDK for the [Geekflare API](https://geekflare.com/api/).
|
|
27
|
+
|
|
28
|
+
## Installation
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
pip install geekflare-api
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Quick Start
|
|
35
|
+
|
|
36
|
+
```python
|
|
37
|
+
from geekflare_api.client import GeekflareClient
|
|
38
|
+
from geekflare_api.models import PingDto
|
|
39
|
+
|
|
40
|
+
with GeekflareClient(api_key="your-api-key") as client:
|
|
41
|
+
result = client.ping(PingDto(url="https://google.com"))
|
|
42
|
+
print(result)
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Available Methods
|
|
46
|
+
|
|
47
|
+
| Method | Description |
|
|
48
|
+
| ----------------------------- | ------------------------------ |
|
|
49
|
+
| `client.meta_scrape(body)` | Scrape meta tags from a URL |
|
|
50
|
+
| `client.web_scrape(body)` | Scrape web page content |
|
|
51
|
+
| `client.dns_record(body)` | Look up DNS records |
|
|
52
|
+
| `client.screenshot(body)` | Take a screenshot of a URL |
|
|
53
|
+
| `client.site_status(body)` | Check if a site is up or down |
|
|
54
|
+
| `client.redirect_check(body)` | Check redirect chain of a URL |
|
|
55
|
+
| `client.broken_link(body)` | Find broken links on a page |
|
|
56
|
+
| `client.url2_pdf(body)` | Convert a URL to PDF |
|
|
57
|
+
| `client.open_ports(body)` | Scan open ports on a host |
|
|
58
|
+
| `client.tls_scan(body)` | Scan TLS/SSL configuration |
|
|
59
|
+
| `client.load_time(body)` | Test page load time |
|
|
60
|
+
| `client.mixed_content(body)` | Check for mixed content issues |
|
|
61
|
+
| `client.dns_sec(body)` | Check DNSSEC configuration |
|
|
62
|
+
| `client.mtr(body)` | Perform MTR network test |
|
|
63
|
+
| `client.ping(body)` | Ping a host |
|
|
64
|
+
| `client.lighthouse(body)` | Run Lighthouse audit |
|
|
65
|
+
| `client.search(body)` | Perform a web search |
|
|
66
|
+
|
|
67
|
+
## Error Handling
|
|
68
|
+
|
|
69
|
+
```python
|
|
70
|
+
from geekflare_api.exceptions import ApiException
|
|
71
|
+
|
|
72
|
+
try:
|
|
73
|
+
result = client.ping(PingDto(url="https://google.com"))
|
|
74
|
+
except ApiException as e:
|
|
75
|
+
print(f"API error {e.status}: {e.reason}")
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Links
|
|
79
|
+
|
|
80
|
+
- [API Documentation](https://docs.geekflare.com/api/intro)
|
|
81
|
+
- [Geekflare API](https://dash.geekflare.com)
|
|
82
|
+
- [Report Issues](https://github.com/geekflare/geekflare-api-python/issues)
|
|
83
|
+
|
|
84
|
+
## License
|
|
85
|
+
|
|
86
|
+
MIT
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# geekflare-api
|
|
2
|
+
|
|
3
|
+
Official Python SDK for the [Geekflare API](https://geekflare.com/api/).
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pip install geekflare-api
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```python
|
|
14
|
+
from geekflare_api.client import GeekflareClient
|
|
15
|
+
from geekflare_api.models import PingDto
|
|
16
|
+
|
|
17
|
+
with GeekflareClient(api_key="your-api-key") as client:
|
|
18
|
+
result = client.ping(PingDto(url="https://google.com"))
|
|
19
|
+
print(result)
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Available Methods
|
|
23
|
+
|
|
24
|
+
| Method | Description |
|
|
25
|
+
| ----------------------------- | ------------------------------ |
|
|
26
|
+
| `client.meta_scrape(body)` | Scrape meta tags from a URL |
|
|
27
|
+
| `client.web_scrape(body)` | Scrape web page content |
|
|
28
|
+
| `client.dns_record(body)` | Look up DNS records |
|
|
29
|
+
| `client.screenshot(body)` | Take a screenshot of a URL |
|
|
30
|
+
| `client.site_status(body)` | Check if a site is up or down |
|
|
31
|
+
| `client.redirect_check(body)` | Check redirect chain of a URL |
|
|
32
|
+
| `client.broken_link(body)` | Find broken links on a page |
|
|
33
|
+
| `client.url2_pdf(body)` | Convert a URL to PDF |
|
|
34
|
+
| `client.open_ports(body)` | Scan open ports on a host |
|
|
35
|
+
| `client.tls_scan(body)` | Scan TLS/SSL configuration |
|
|
36
|
+
| `client.load_time(body)` | Test page load time |
|
|
37
|
+
| `client.mixed_content(body)` | Check for mixed content issues |
|
|
38
|
+
| `client.dns_sec(body)` | Check DNSSEC configuration |
|
|
39
|
+
| `client.mtr(body)` | Perform MTR network test |
|
|
40
|
+
| `client.ping(body)` | Ping a host |
|
|
41
|
+
| `client.lighthouse(body)` | Run Lighthouse audit |
|
|
42
|
+
| `client.search(body)` | Perform a web search |
|
|
43
|
+
|
|
44
|
+
## Error Handling
|
|
45
|
+
|
|
46
|
+
```python
|
|
47
|
+
from geekflare_api.exceptions import ApiException
|
|
48
|
+
|
|
49
|
+
try:
|
|
50
|
+
result = client.ping(PingDto(url="https://google.com"))
|
|
51
|
+
except ApiException as e:
|
|
52
|
+
print(f"API error {e.status}: {e.reason}")
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Links
|
|
56
|
+
|
|
57
|
+
- [API Documentation](https://docs.geekflare.com/api/intro)
|
|
58
|
+
- [Geekflare API](https://dash.geekflare.com)
|
|
59
|
+
- [Report Issues](https://github.com/geekflare/geekflare-api-python/issues)
|
|
60
|
+
|
|
61
|
+
## License
|
|
62
|
+
|
|
63
|
+
MIT
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
# flake8: noqa
|
|
4
|
+
|
|
5
|
+
"""
|
|
6
|
+
Geekflare API
|
|
7
|
+
|
|
8
|
+
Official OpenAPI specification for all Geekflare API endpoints.
|
|
9
|
+
|
|
10
|
+
The version of the OpenAPI document: 1.0.0
|
|
11
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
12
|
+
|
|
13
|
+
Do not edit the class manually.
|
|
14
|
+
""" # noqa: E501
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
__version__ = "0.1.0"
|
|
18
|
+
|
|
19
|
+
# Define package exports
|
|
20
|
+
__all__ = [
|
|
21
|
+
"ApiToolApi",
|
|
22
|
+
"ApiResponse",
|
|
23
|
+
"ApiClient",
|
|
24
|
+
"Configuration",
|
|
25
|
+
"OpenApiException",
|
|
26
|
+
"ApiTypeError",
|
|
27
|
+
"ApiValueError",
|
|
28
|
+
"ApiKeyError",
|
|
29
|
+
"ApiAttributeError",
|
|
30
|
+
"ApiException",
|
|
31
|
+
"BaseErrorResponseDto",
|
|
32
|
+
"BrokenLinkDto",
|
|
33
|
+
"BrokenLinkMetaDto",
|
|
34
|
+
"BrokenLinkResponseDto",
|
|
35
|
+
"BrokenLinkSummaryDto",
|
|
36
|
+
"DefaultExtractionFieldDto",
|
|
37
|
+
"DnsMetaDto",
|
|
38
|
+
"DnsRecordDto",
|
|
39
|
+
"DnsRecordResponseDto",
|
|
40
|
+
"DnsSecDataDto",
|
|
41
|
+
"DnsSecDto",
|
|
42
|
+
"DnsSecMetaDto",
|
|
43
|
+
"DnsSecResponseDto",
|
|
44
|
+
"ExtractionSchemaDto",
|
|
45
|
+
"ExtractionSchemaDtoFieldsInner",
|
|
46
|
+
"HealthResponseDto",
|
|
47
|
+
"ImageSearchResponseDto",
|
|
48
|
+
"ImageSearchResultItemDto",
|
|
49
|
+
"LighthouseDto",
|
|
50
|
+
"LighthouseMetaDto",
|
|
51
|
+
"LighthouseResponseDto",
|
|
52
|
+
"LoadTimeDataDto",
|
|
53
|
+
"LoadTimeDto",
|
|
54
|
+
"LoadTimeMetaDto",
|
|
55
|
+
"LoadTimeResponseDto",
|
|
56
|
+
"MarginDto",
|
|
57
|
+
"MetaScrapeDto",
|
|
58
|
+
"MetaScrapeMetaDto",
|
|
59
|
+
"MetaScrapeResponseDto",
|
|
60
|
+
"MetaScrapeResponseDtoData",
|
|
61
|
+
"MixedContentDataDto",
|
|
62
|
+
"MixedContentDto",
|
|
63
|
+
"MixedContentMetaDto",
|
|
64
|
+
"MixedContentResponseDto",
|
|
65
|
+
"MixedContentResponseDtoData",
|
|
66
|
+
"MtrDataDto",
|
|
67
|
+
"MtrDto",
|
|
68
|
+
"MtrMetaDto",
|
|
69
|
+
"MtrResponseDto",
|
|
70
|
+
"NetworkDto",
|
|
71
|
+
"OpenPortDto",
|
|
72
|
+
"OpenPortMetaDto",
|
|
73
|
+
"OpenPortResponseDto",
|
|
74
|
+
"PingDataDto",
|
|
75
|
+
"PingDto",
|
|
76
|
+
"PingMetaDto",
|
|
77
|
+
"PingResponseDto",
|
|
78
|
+
"ProtocolSupportDto",
|
|
79
|
+
"RedirectCheckDto",
|
|
80
|
+
"RedirectCheckMetaDto",
|
|
81
|
+
"RedirectCheckResponseDto",
|
|
82
|
+
"RedirectHopDto",
|
|
83
|
+
"ScreenshotDto",
|
|
84
|
+
"ScreenshotMetaDto",
|
|
85
|
+
"ScreenshotResponseDto",
|
|
86
|
+
"Search200Response",
|
|
87
|
+
"SearchHtmlResponseDto",
|
|
88
|
+
"SearchMarkdownResponseDto",
|
|
89
|
+
"SearchMetaDto",
|
|
90
|
+
"SearchRequestDto",
|
|
91
|
+
"SearchResponseDto",
|
|
92
|
+
"SearchResultItemDto",
|
|
93
|
+
"SelectorExtractionFieldDto",
|
|
94
|
+
"ServiceHealthResponseDto",
|
|
95
|
+
"ServiceStatus",
|
|
96
|
+
"SiteStatusDto",
|
|
97
|
+
"SiteStatusMetaDto",
|
|
98
|
+
"SiteStatusResponseDto",
|
|
99
|
+
"TestMetaDto",
|
|
100
|
+
"TimingsDto",
|
|
101
|
+
"TlsCertificateDto",
|
|
102
|
+
"TlsCertificateIssuerDto",
|
|
103
|
+
"TlsProtocolsDto",
|
|
104
|
+
"TlsScanDataDto",
|
|
105
|
+
"TlsScanDto",
|
|
106
|
+
"TlsScanMetaDto",
|
|
107
|
+
"TlsScanResponseDto",
|
|
108
|
+
"Url2PdfDto",
|
|
109
|
+
"Url2PdfMetaDto",
|
|
110
|
+
"Url2PdfResponseDto",
|
|
111
|
+
"WebScrapeDto",
|
|
112
|
+
"WebScrapeMetaDto",
|
|
113
|
+
"WebScrapeResponseDto",
|
|
114
|
+
]
|
|
115
|
+
|
|
116
|
+
# import apis into sdk package
|
|
117
|
+
from geekflare_api.api.api_tool_api import ApiToolApi as ApiToolApi
|
|
118
|
+
|
|
119
|
+
# import ApiClient
|
|
120
|
+
from geekflare_api.api_response import ApiResponse as ApiResponse
|
|
121
|
+
from geekflare_api.api_client import ApiClient as ApiClient
|
|
122
|
+
from geekflare_api.configuration import Configuration as Configuration
|
|
123
|
+
from geekflare_api.exceptions import OpenApiException as OpenApiException
|
|
124
|
+
from geekflare_api.exceptions import ApiTypeError as ApiTypeError
|
|
125
|
+
from geekflare_api.exceptions import ApiValueError as ApiValueError
|
|
126
|
+
from geekflare_api.exceptions import ApiKeyError as ApiKeyError
|
|
127
|
+
from geekflare_api.exceptions import ApiAttributeError as ApiAttributeError
|
|
128
|
+
from geekflare_api.exceptions import ApiException as ApiException
|
|
129
|
+
|
|
130
|
+
# import models into sdk package
|
|
131
|
+
from geekflare_api.models.base_error_response_dto import BaseErrorResponseDto as BaseErrorResponseDto
|
|
132
|
+
from geekflare_api.models.broken_link_dto import BrokenLinkDto as BrokenLinkDto
|
|
133
|
+
from geekflare_api.models.broken_link_meta_dto import BrokenLinkMetaDto as BrokenLinkMetaDto
|
|
134
|
+
from geekflare_api.models.broken_link_response_dto import BrokenLinkResponseDto as BrokenLinkResponseDto
|
|
135
|
+
from geekflare_api.models.broken_link_summary_dto import BrokenLinkSummaryDto as BrokenLinkSummaryDto
|
|
136
|
+
from geekflare_api.models.default_extraction_field_dto import DefaultExtractionFieldDto as DefaultExtractionFieldDto
|
|
137
|
+
from geekflare_api.models.dns_meta_dto import DnsMetaDto as DnsMetaDto
|
|
138
|
+
from geekflare_api.models.dns_record_dto import DnsRecordDto as DnsRecordDto
|
|
139
|
+
from geekflare_api.models.dns_record_response_dto import DnsRecordResponseDto as DnsRecordResponseDto
|
|
140
|
+
from geekflare_api.models.dns_sec_data_dto import DnsSecDataDto as DnsSecDataDto
|
|
141
|
+
from geekflare_api.models.dns_sec_dto import DnsSecDto as DnsSecDto
|
|
142
|
+
from geekflare_api.models.dns_sec_meta_dto import DnsSecMetaDto as DnsSecMetaDto
|
|
143
|
+
from geekflare_api.models.dns_sec_response_dto import DnsSecResponseDto as DnsSecResponseDto
|
|
144
|
+
from geekflare_api.models.extraction_schema_dto import ExtractionSchemaDto as ExtractionSchemaDto
|
|
145
|
+
from geekflare_api.models.extraction_schema_dto_fields_inner import ExtractionSchemaDtoFieldsInner as ExtractionSchemaDtoFieldsInner
|
|
146
|
+
from geekflare_api.models.health_response_dto import HealthResponseDto as HealthResponseDto
|
|
147
|
+
from geekflare_api.models.image_search_response_dto import ImageSearchResponseDto as ImageSearchResponseDto
|
|
148
|
+
from geekflare_api.models.image_search_result_item_dto import ImageSearchResultItemDto as ImageSearchResultItemDto
|
|
149
|
+
from geekflare_api.models.lighthouse_dto import LighthouseDto as LighthouseDto
|
|
150
|
+
from geekflare_api.models.lighthouse_meta_dto import LighthouseMetaDto as LighthouseMetaDto
|
|
151
|
+
from geekflare_api.models.lighthouse_response_dto import LighthouseResponseDto as LighthouseResponseDto
|
|
152
|
+
from geekflare_api.models.load_time_data_dto import LoadTimeDataDto as LoadTimeDataDto
|
|
153
|
+
from geekflare_api.models.load_time_dto import LoadTimeDto as LoadTimeDto
|
|
154
|
+
from geekflare_api.models.load_time_meta_dto import LoadTimeMetaDto as LoadTimeMetaDto
|
|
155
|
+
from geekflare_api.models.load_time_response_dto import LoadTimeResponseDto as LoadTimeResponseDto
|
|
156
|
+
from geekflare_api.models.margin_dto import MarginDto as MarginDto
|
|
157
|
+
from geekflare_api.models.meta_scrape_dto import MetaScrapeDto as MetaScrapeDto
|
|
158
|
+
from geekflare_api.models.meta_scrape_meta_dto import MetaScrapeMetaDto as MetaScrapeMetaDto
|
|
159
|
+
from geekflare_api.models.meta_scrape_response_dto import MetaScrapeResponseDto as MetaScrapeResponseDto
|
|
160
|
+
from geekflare_api.models.meta_scrape_response_dto_data import MetaScrapeResponseDtoData as MetaScrapeResponseDtoData
|
|
161
|
+
from geekflare_api.models.mixed_content_data_dto import MixedContentDataDto as MixedContentDataDto
|
|
162
|
+
from geekflare_api.models.mixed_content_dto import MixedContentDto as MixedContentDto
|
|
163
|
+
from geekflare_api.models.mixed_content_meta_dto import MixedContentMetaDto as MixedContentMetaDto
|
|
164
|
+
from geekflare_api.models.mixed_content_response_dto import MixedContentResponseDto as MixedContentResponseDto
|
|
165
|
+
from geekflare_api.models.mixed_content_response_dto_data import MixedContentResponseDtoData as MixedContentResponseDtoData
|
|
166
|
+
from geekflare_api.models.mtr_data_dto import MtrDataDto as MtrDataDto
|
|
167
|
+
from geekflare_api.models.mtr_dto import MtrDto as MtrDto
|
|
168
|
+
from geekflare_api.models.mtr_meta_dto import MtrMetaDto as MtrMetaDto
|
|
169
|
+
from geekflare_api.models.mtr_response_dto import MtrResponseDto as MtrResponseDto
|
|
170
|
+
from geekflare_api.models.network_dto import NetworkDto as NetworkDto
|
|
171
|
+
from geekflare_api.models.open_port_dto import OpenPortDto as OpenPortDto
|
|
172
|
+
from geekflare_api.models.open_port_meta_dto import OpenPortMetaDto as OpenPortMetaDto
|
|
173
|
+
from geekflare_api.models.open_port_response_dto import OpenPortResponseDto as OpenPortResponseDto
|
|
174
|
+
from geekflare_api.models.ping_data_dto import PingDataDto as PingDataDto
|
|
175
|
+
from geekflare_api.models.ping_dto import PingDto as PingDto
|
|
176
|
+
from geekflare_api.models.ping_meta_dto import PingMetaDto as PingMetaDto
|
|
177
|
+
from geekflare_api.models.ping_response_dto import PingResponseDto as PingResponseDto
|
|
178
|
+
from geekflare_api.models.protocol_support_dto import ProtocolSupportDto as ProtocolSupportDto
|
|
179
|
+
from geekflare_api.models.redirect_check_dto import RedirectCheckDto as RedirectCheckDto
|
|
180
|
+
from geekflare_api.models.redirect_check_meta_dto import RedirectCheckMetaDto as RedirectCheckMetaDto
|
|
181
|
+
from geekflare_api.models.redirect_check_response_dto import RedirectCheckResponseDto as RedirectCheckResponseDto
|
|
182
|
+
from geekflare_api.models.redirect_hop_dto import RedirectHopDto as RedirectHopDto
|
|
183
|
+
from geekflare_api.models.screenshot_dto import ScreenshotDto as ScreenshotDto
|
|
184
|
+
from geekflare_api.models.screenshot_meta_dto import ScreenshotMetaDto as ScreenshotMetaDto
|
|
185
|
+
from geekflare_api.models.screenshot_response_dto import ScreenshotResponseDto as ScreenshotResponseDto
|
|
186
|
+
from geekflare_api.models.search200_response import Search200Response as Search200Response
|
|
187
|
+
from geekflare_api.models.search_html_response_dto import SearchHtmlResponseDto as SearchHtmlResponseDto
|
|
188
|
+
from geekflare_api.models.search_markdown_response_dto import SearchMarkdownResponseDto as SearchMarkdownResponseDto
|
|
189
|
+
from geekflare_api.models.search_meta_dto import SearchMetaDto as SearchMetaDto
|
|
190
|
+
from geekflare_api.models.search_request_dto import SearchRequestDto as SearchRequestDto
|
|
191
|
+
from geekflare_api.models.search_response_dto import SearchResponseDto as SearchResponseDto
|
|
192
|
+
from geekflare_api.models.search_result_item_dto import SearchResultItemDto as SearchResultItemDto
|
|
193
|
+
from geekflare_api.models.selector_extraction_field_dto import SelectorExtractionFieldDto as SelectorExtractionFieldDto
|
|
194
|
+
from geekflare_api.models.service_health_response_dto import ServiceHealthResponseDto as ServiceHealthResponseDto
|
|
195
|
+
from geekflare_api.models.service_status import ServiceStatus as ServiceStatus
|
|
196
|
+
from geekflare_api.models.site_status_dto import SiteStatusDto as SiteStatusDto
|
|
197
|
+
from geekflare_api.models.site_status_meta_dto import SiteStatusMetaDto as SiteStatusMetaDto
|
|
198
|
+
from geekflare_api.models.site_status_response_dto import SiteStatusResponseDto as SiteStatusResponseDto
|
|
199
|
+
from geekflare_api.models.test_meta_dto import TestMetaDto as TestMetaDto
|
|
200
|
+
from geekflare_api.models.timings_dto import TimingsDto as TimingsDto
|
|
201
|
+
from geekflare_api.models.tls_certificate_dto import TlsCertificateDto as TlsCertificateDto
|
|
202
|
+
from geekflare_api.models.tls_certificate_issuer_dto import TlsCertificateIssuerDto as TlsCertificateIssuerDto
|
|
203
|
+
from geekflare_api.models.tls_protocols_dto import TlsProtocolsDto as TlsProtocolsDto
|
|
204
|
+
from geekflare_api.models.tls_scan_data_dto import TlsScanDataDto as TlsScanDataDto
|
|
205
|
+
from geekflare_api.models.tls_scan_dto import TlsScanDto as TlsScanDto
|
|
206
|
+
from geekflare_api.models.tls_scan_meta_dto import TlsScanMetaDto as TlsScanMetaDto
|
|
207
|
+
from geekflare_api.models.tls_scan_response_dto import TlsScanResponseDto as TlsScanResponseDto
|
|
208
|
+
from geekflare_api.models.url2_pdf_dto import Url2PdfDto as Url2PdfDto
|
|
209
|
+
from geekflare_api.models.url2_pdf_meta_dto import Url2PdfMetaDto as Url2PdfMetaDto
|
|
210
|
+
from geekflare_api.models.url2_pdf_response_dto import Url2PdfResponseDto as Url2PdfResponseDto
|
|
211
|
+
from geekflare_api.models.web_scrape_dto import WebScrapeDto as WebScrapeDto
|
|
212
|
+
from geekflare_api.models.web_scrape_meta_dto import WebScrapeMetaDto as WebScrapeMetaDto
|
|
213
|
+
from geekflare_api.models.web_scrape_response_dto import WebScrapeResponseDto as WebScrapeResponseDto
|
|
214
|
+
from geekflare_api.client import GeekflareClient
|
|
215
|
+
|