website-traffic-database 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.
@@ -0,0 +1,5 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 ApiVault Labs
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
@@ -0,0 +1,101 @@
1
+ Metadata-Version: 2.4
2
+ Name: website-traffic-database
3
+ Version: 0.1.0
4
+ Summary: Python SDK for Website Traffic Database on Apify. Find and compare websites by traffic, country, category and growth signals through the hosted Apify Actor.
5
+ Author: ApiVault Labs
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/apivault-labs/website-traffic-database-python
8
+ Project-URL: Documentation, https://github.com/apivault-labs/website-traffic-database-python#readme
9
+ Project-URL: Apify Actor, https://apify.com/apivault_labs/website-traffic-database
10
+ Project-URL: Bug Tracker, https://github.com/apivault-labs/website-traffic-database-python/issues
11
+ Keywords: website-traffic,traffic-database,competitive-intelligence,lead-generation,market-research,apify,python-sdk
12
+ Requires-Python: >=3.9
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ Requires-Dist: requests>=2.31.0
16
+ Dynamic: license-file
17
+
18
+ # Website Traffic Database — Python SDK
19
+
20
+ Python client for the [Website Traffic Database Apify Actor](https://apify.com/apivault_labs/website-traffic-database). Send public Actor inputs, wait for the hosted run, and receive clean Dataset rows without maintaining scraping infrastructure.
21
+
22
+ [![Apify Actor](https://img.shields.io/badge/Apify-Actor-blue)](https://apify.com/apivault_labs/website-traffic-database)
23
+ [![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-blue)](https://www.python.org/)
24
+ [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
25
+
26
+ ## Results
27
+
28
+ - Traffic and rank filters
29
+ - Country and category discovery
30
+ - Growth and engagement signals
31
+ - Direct domain and similar-site workflows
32
+
33
+ Traffic values are estimates. The wrapper exposes only the Actor's public contract; processing remains inside the hosted Actor.
34
+
35
+ ## Install
36
+
37
+ ```bash
38
+ pip install git+https://github.com/apivault-labs/website-traffic-database-python.git
39
+ ```
40
+
41
+ Create an Apify token at [Console → Integrations](https://console.apify.com/account/integrations), then:
42
+
43
+ ```python
44
+ from website_traffic_database import WebsiteTrafficDatabaseClient
45
+
46
+ client = WebsiteTrafficDatabaseClient(api_token="apify_api_xxxxxx")
47
+ rows = client.run({'workflow': 'auto',
48
+ 'country': 'US',
49
+ 'minVisits': 10000,
50
+ 'onlyGrowing': True,
51
+ 'maxResults': 100})
52
+ print(rows[0] if rows else "No results")
53
+ ```
54
+
55
+ You can set `APIFY_API_TOKEN` instead of passing the token in code.
56
+
57
+ ## Public input options
58
+
59
+ | Field | Type | Default | Description |
60
+ |---|---|---|---|
61
+ | `workflow` | `string` | `auto` | Discover websites, inspect domains or find similar sites. |
62
+ | `minVisits` | `integer` | `0` | Minimum estimated monthly visits. |
63
+ | `maxVisits` | `integer` | `0` | Optional maximum estimated monthly visits. |
64
+ | `category` | `string` | `` | Website category filter. |
65
+ | `country` | `string` | `` | ISO-2 country code. |
66
+ | `hasAiTraffic` | `boolean` | `False` | Keep sites with detected AI referral traffic. |
67
+ | `onlyGrowing` | `boolean` | `False` | Keep sites with positive traffic growth. |
68
+ | `minGrowthPercent` | `number` | `0` | Minimum growth percentage. |
69
+ | `keyword` | `string` | `` | Match a domain or site name. |
70
+ | `trafficSource` | `string` | `` | Traffic source to filter by. |
71
+ | `maxBounce` | `number` | `0` | Optional maximum bounce rate. |
72
+ | `minPagesPerVisit` | `number` | `0` | Minimum pages per visit. |
73
+ | `maxResults` | `integer` | `100` | Maximum number of returned rows. |
74
+ | `sortBy` | `string` | `visits` | Public field used to order results. |
75
+ | `sortOrder` | `string` | `desc` | Ascending or descending order. |
76
+ | `outputPreset` | `string` | `outreach` | Choose a public result layout. |
77
+ | `domains` | `array` | `[]` | Domains to inspect directly. |
78
+ | `similarTo` | `string` | `` | Domain used to discover similar websites. |
79
+
80
+ The complete, versioned schema is also available on the [Actor page](https://apify.com/apivault_labs/website-traffic-database).
81
+
82
+ ## Pricing
83
+
84
+ Pay per delivered result through Apify, starting around **$7/1,000 results** on paid tiers. Free-plan pricing and platform usage can differ; check the Actor page before large runs.
85
+
86
+ ## Examples
87
+
88
+ - `examples/quickstart.py` — first run
89
+ - `examples/bulk_analysis.py` — expand a target list
90
+ - `examples/export_csv.py` — save flat result fields
91
+ - `examples/save_json.py` — preserve nested output
92
+ - `examples/cost_estimate.py` — estimate result-event charges
93
+ - `examples/environment_token.py` — keep credentials out of code
94
+
95
+ ## Architecture and privacy
96
+
97
+ This repository is intentionally a thin API client. Collection, retries, analysis and billing run inside the hosted Apify Actor. No private implementation, credentials, scoring weights or infrastructure configuration are included.
98
+
99
+ ## License
100
+
101
+ MIT. The hosted Actor is a separate paid service governed by Apify terms.
@@ -0,0 +1,84 @@
1
+ # Website Traffic Database — Python SDK
2
+
3
+ Python client for the [Website Traffic Database Apify Actor](https://apify.com/apivault_labs/website-traffic-database). Send public Actor inputs, wait for the hosted run, and receive clean Dataset rows without maintaining scraping infrastructure.
4
+
5
+ [![Apify Actor](https://img.shields.io/badge/Apify-Actor-blue)](https://apify.com/apivault_labs/website-traffic-database)
6
+ [![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-blue)](https://www.python.org/)
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
8
+
9
+ ## Results
10
+
11
+ - Traffic and rank filters
12
+ - Country and category discovery
13
+ - Growth and engagement signals
14
+ - Direct domain and similar-site workflows
15
+
16
+ Traffic values are estimates. The wrapper exposes only the Actor's public contract; processing remains inside the hosted Actor.
17
+
18
+ ## Install
19
+
20
+ ```bash
21
+ pip install git+https://github.com/apivault-labs/website-traffic-database-python.git
22
+ ```
23
+
24
+ Create an Apify token at [Console → Integrations](https://console.apify.com/account/integrations), then:
25
+
26
+ ```python
27
+ from website_traffic_database import WebsiteTrafficDatabaseClient
28
+
29
+ client = WebsiteTrafficDatabaseClient(api_token="apify_api_xxxxxx")
30
+ rows = client.run({'workflow': 'auto',
31
+ 'country': 'US',
32
+ 'minVisits': 10000,
33
+ 'onlyGrowing': True,
34
+ 'maxResults': 100})
35
+ print(rows[0] if rows else "No results")
36
+ ```
37
+
38
+ You can set `APIFY_API_TOKEN` instead of passing the token in code.
39
+
40
+ ## Public input options
41
+
42
+ | Field | Type | Default | Description |
43
+ |---|---|---|---|
44
+ | `workflow` | `string` | `auto` | Discover websites, inspect domains or find similar sites. |
45
+ | `minVisits` | `integer` | `0` | Minimum estimated monthly visits. |
46
+ | `maxVisits` | `integer` | `0` | Optional maximum estimated monthly visits. |
47
+ | `category` | `string` | `` | Website category filter. |
48
+ | `country` | `string` | `` | ISO-2 country code. |
49
+ | `hasAiTraffic` | `boolean` | `False` | Keep sites with detected AI referral traffic. |
50
+ | `onlyGrowing` | `boolean` | `False` | Keep sites with positive traffic growth. |
51
+ | `minGrowthPercent` | `number` | `0` | Minimum growth percentage. |
52
+ | `keyword` | `string` | `` | Match a domain or site name. |
53
+ | `trafficSource` | `string` | `` | Traffic source to filter by. |
54
+ | `maxBounce` | `number` | `0` | Optional maximum bounce rate. |
55
+ | `minPagesPerVisit` | `number` | `0` | Minimum pages per visit. |
56
+ | `maxResults` | `integer` | `100` | Maximum number of returned rows. |
57
+ | `sortBy` | `string` | `visits` | Public field used to order results. |
58
+ | `sortOrder` | `string` | `desc` | Ascending or descending order. |
59
+ | `outputPreset` | `string` | `outreach` | Choose a public result layout. |
60
+ | `domains` | `array` | `[]` | Domains to inspect directly. |
61
+ | `similarTo` | `string` | `` | Domain used to discover similar websites. |
62
+
63
+ The complete, versioned schema is also available on the [Actor page](https://apify.com/apivault_labs/website-traffic-database).
64
+
65
+ ## Pricing
66
+
67
+ Pay per delivered result through Apify, starting around **$7/1,000 results** on paid tiers. Free-plan pricing and platform usage can differ; check the Actor page before large runs.
68
+
69
+ ## Examples
70
+
71
+ - `examples/quickstart.py` — first run
72
+ - `examples/bulk_analysis.py` — expand a target list
73
+ - `examples/export_csv.py` — save flat result fields
74
+ - `examples/save_json.py` — preserve nested output
75
+ - `examples/cost_estimate.py` — estimate result-event charges
76
+ - `examples/environment_token.py` — keep credentials out of code
77
+
78
+ ## Architecture and privacy
79
+
80
+ This repository is intentionally a thin API client. Collection, retries, analysis and billing run inside the hosted Apify Actor. No private implementation, credentials, scoring weights or infrastructure configuration are included.
81
+
82
+ ## License
83
+
84
+ MIT. The hosted Actor is a separate paid service governed by Apify terms.
@@ -0,0 +1,23 @@
1
+ [build-system]
2
+ requires = ["setuptools>=64", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "website-traffic-database"
7
+ version = "0.1.0"
8
+ description = "Python SDK for Website Traffic Database on Apify. Find and compare websites by traffic, country, category and growth signals through the hosted Apify Actor."
9
+ readme = "README.md"
10
+ license = { text = "MIT" }
11
+ authors = [{ name = "ApiVault Labs" }]
12
+ requires-python = ">=3.9"
13
+ dependencies = ["requests>=2.31.0"]
14
+ keywords = ["website-traffic", "traffic-database", "competitive-intelligence", "lead-generation", "market-research", "apify", "python-sdk"]
15
+
16
+ [project.urls]
17
+ Homepage = "https://github.com/apivault-labs/website-traffic-database-python"
18
+ Documentation = "https://github.com/apivault-labs/website-traffic-database-python#readme"
19
+ "Apify Actor" = "https://apify.com/apivault_labs/website-traffic-database"
20
+ "Bug Tracker" = "https://github.com/apivault-labs/website-traffic-database-python/issues"
21
+
22
+ [tool.setuptools.packages.find]
23
+ include = ["website_traffic_database*"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,6 @@
1
+ """Python SDK for the hosted Website Traffic Database Apify Actor."""
2
+ from .client import WebsiteTrafficDatabaseClient
3
+ from .exceptions import WebsiteTrafficDatabaseError, AuthenticationError, ActorRunError, ActorTimeoutError
4
+
5
+ __version__ = "0.1.0"
6
+ __all__ = ["WebsiteTrafficDatabaseClient", "WebsiteTrafficDatabaseError", "AuthenticationError", "ActorRunError", "ActorTimeoutError"]
@@ -0,0 +1,112 @@
1
+ """Thin synchronous client for the Website Traffic Database Apify Actor."""
2
+ from __future__ import annotations
3
+
4
+ import os
5
+ import time
6
+ from typing import Any, Mapping
7
+
8
+ import requests
9
+
10
+ from .exceptions import ActorRunError, ActorTimeoutError, AuthenticationError, WebsiteTrafficDatabaseError
11
+
12
+ ACTOR_ID = "apivault_labs~website-traffic-database"
13
+ APIFY_API_BASE = "https://api.apify.com/v2"
14
+ TERMINAL_FAIL = {"FAILED", "TIMED-OUT", "ABORTED"}
15
+
16
+
17
+ class WebsiteTrafficDatabaseClient:
18
+ """Run the hosted Actor and download its Dataset results."""
19
+
20
+ def __init__(self, api_token: str | None = None, timeout: int = 600,
21
+ poll_interval: float = 3.0):
22
+ token = api_token or os.environ.get("APIFY_API_TOKEN")
23
+ if not token:
24
+ raise AuthenticationError(
25
+ "Pass api_token or set APIFY_API_TOKEN. Create a token at "
26
+ "https://console.apify.com/account/integrations"
27
+ )
28
+ self.timeout = int(timeout)
29
+ self.poll_interval = float(poll_interval)
30
+ self.base_url = APIFY_API_BASE
31
+ self.session = requests.Session()
32
+ self.session.headers.update({
33
+ "Authorization": f"Bearer {token}",
34
+ "Content-Type": "application/json",
35
+ "User-Agent": "website-traffic-database-python/0.1.0",
36
+ })
37
+
38
+ def run(self, actor_input: Mapping[str, Any], *, actor_timeout_secs: int = 300) -> list[dict[str, Any]]:
39
+ """Start one Actor run, wait for completion and return clean Dataset items."""
40
+ if not isinstance(actor_input, Mapping):
41
+ raise TypeError("actor_input must be a mapping")
42
+ run_id = self._start(dict(actor_input), actor_timeout_secs)
43
+ run = self._wait(run_id)
44
+ dataset_id = run.get("defaultDatasetId")
45
+ if not dataset_id:
46
+ raise ActorRunError("Successful run did not expose a Dataset ID")
47
+ return self._dataset(dataset_id)
48
+
49
+ def run_one(self, actor_input: Mapping[str, Any], **kwargs: Any) -> dict[str, Any]:
50
+ """Return the first Dataset row, raising when no result was produced."""
51
+ rows = self.run(actor_input, **kwargs)
52
+ if not rows:
53
+ raise ActorRunError("Actor completed but returned no Dataset rows")
54
+ return rows[0]
55
+
56
+ @staticmethod
57
+ def estimate_cost(result_count: int, price_per_1000: float = 7.0) -> float:
58
+ """Estimate result charges; actual tier pricing and platform usage may vary."""
59
+ if result_count < 0:
60
+ raise ValueError("result_count cannot be negative")
61
+ return round(result_count * price_per_1000 / 1000, 6)
62
+
63
+ def _start(self, payload: dict[str, Any], timeout_secs: int) -> str:
64
+ try:
65
+ response = self.session.post(
66
+ f"{self.base_url}/acts/{ACTOR_ID}/runs",
67
+ params={"timeout": int(timeout_secs)}, json=payload, timeout=30,
68
+ )
69
+ except requests.RequestException as exc:
70
+ raise WebsiteTrafficDatabaseError(f"Could not start Actor run: {exc}") from exc
71
+ if response.status_code == 401:
72
+ raise AuthenticationError("Apify rejected the API token")
73
+ if response.status_code >= 400:
74
+ raise ActorRunError(f"Run start failed with HTTP {response.status_code}: {response.text[:300]}")
75
+ run_id = (response.json().get("data") or {}).get("id")
76
+ if not run_id:
77
+ raise ActorRunError("Apify response did not contain a run ID")
78
+ return run_id
79
+
80
+ def _wait(self, run_id: str) -> dict[str, Any]:
81
+ deadline = time.monotonic() + self.timeout
82
+ while True:
83
+ try:
84
+ response = self.session.get(f"{self.base_url}/actor-runs/{run_id}", timeout=30)
85
+ except requests.RequestException as exc:
86
+ raise WebsiteTrafficDatabaseError(f"Could not poll Actor run: {exc}") from exc
87
+ if response.status_code >= 400:
88
+ raise ActorRunError(f"Run poll failed with HTTP {response.status_code}: {response.text[:300]}")
89
+ run = response.json().get("data") or {}
90
+ status = run.get("status")
91
+ if status == "SUCCEEDED":
92
+ return run
93
+ if status in TERMINAL_FAIL:
94
+ raise ActorRunError(f"Actor run ended with {status}: {run.get('statusMessage') or 'no details'}")
95
+ if time.monotonic() >= deadline:
96
+ raise ActorTimeoutError(f"Actor run {run_id} did not finish within {self.timeout} seconds")
97
+ time.sleep(self.poll_interval)
98
+
99
+ def _dataset(self, dataset_id: str) -> list[dict[str, Any]]:
100
+ try:
101
+ response = self.session.get(
102
+ f"{self.base_url}/datasets/{dataset_id}/items",
103
+ params={"clean": "true", "format": "json"}, timeout=120,
104
+ )
105
+ except requests.RequestException as exc:
106
+ raise WebsiteTrafficDatabaseError(f"Could not download Dataset: {exc}") from exc
107
+ if response.status_code >= 400:
108
+ raise ActorRunError(f"Dataset fetch failed with HTTP {response.status_code}: {response.text[:300]}")
109
+ data = response.json()
110
+ if not isinstance(data, list):
111
+ raise ActorRunError("Unexpected Dataset response type")
112
+ return data
@@ -0,0 +1,13 @@
1
+ """Public exception hierarchy for the Website Traffic Database SDK."""
2
+
3
+ class WebsiteTrafficDatabaseError(Exception):
4
+ """Base SDK error."""
5
+
6
+ class AuthenticationError(WebsiteTrafficDatabaseError):
7
+ """The Apify token is missing or rejected."""
8
+
9
+ class ActorRunError(WebsiteTrafficDatabaseError):
10
+ """The Actor run or Dataset request failed."""
11
+
12
+ class ActorTimeoutError(WebsiteTrafficDatabaseError):
13
+ """The client stopped waiting before the Actor completed."""
@@ -0,0 +1,101 @@
1
+ Metadata-Version: 2.4
2
+ Name: website-traffic-database
3
+ Version: 0.1.0
4
+ Summary: Python SDK for Website Traffic Database on Apify. Find and compare websites by traffic, country, category and growth signals through the hosted Apify Actor.
5
+ Author: ApiVault Labs
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/apivault-labs/website-traffic-database-python
8
+ Project-URL: Documentation, https://github.com/apivault-labs/website-traffic-database-python#readme
9
+ Project-URL: Apify Actor, https://apify.com/apivault_labs/website-traffic-database
10
+ Project-URL: Bug Tracker, https://github.com/apivault-labs/website-traffic-database-python/issues
11
+ Keywords: website-traffic,traffic-database,competitive-intelligence,lead-generation,market-research,apify,python-sdk
12
+ Requires-Python: >=3.9
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ Requires-Dist: requests>=2.31.0
16
+ Dynamic: license-file
17
+
18
+ # Website Traffic Database — Python SDK
19
+
20
+ Python client for the [Website Traffic Database Apify Actor](https://apify.com/apivault_labs/website-traffic-database). Send public Actor inputs, wait for the hosted run, and receive clean Dataset rows without maintaining scraping infrastructure.
21
+
22
+ [![Apify Actor](https://img.shields.io/badge/Apify-Actor-blue)](https://apify.com/apivault_labs/website-traffic-database)
23
+ [![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-blue)](https://www.python.org/)
24
+ [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
25
+
26
+ ## Results
27
+
28
+ - Traffic and rank filters
29
+ - Country and category discovery
30
+ - Growth and engagement signals
31
+ - Direct domain and similar-site workflows
32
+
33
+ Traffic values are estimates. The wrapper exposes only the Actor's public contract; processing remains inside the hosted Actor.
34
+
35
+ ## Install
36
+
37
+ ```bash
38
+ pip install git+https://github.com/apivault-labs/website-traffic-database-python.git
39
+ ```
40
+
41
+ Create an Apify token at [Console → Integrations](https://console.apify.com/account/integrations), then:
42
+
43
+ ```python
44
+ from website_traffic_database import WebsiteTrafficDatabaseClient
45
+
46
+ client = WebsiteTrafficDatabaseClient(api_token="apify_api_xxxxxx")
47
+ rows = client.run({'workflow': 'auto',
48
+ 'country': 'US',
49
+ 'minVisits': 10000,
50
+ 'onlyGrowing': True,
51
+ 'maxResults': 100})
52
+ print(rows[0] if rows else "No results")
53
+ ```
54
+
55
+ You can set `APIFY_API_TOKEN` instead of passing the token in code.
56
+
57
+ ## Public input options
58
+
59
+ | Field | Type | Default | Description |
60
+ |---|---|---|---|
61
+ | `workflow` | `string` | `auto` | Discover websites, inspect domains or find similar sites. |
62
+ | `minVisits` | `integer` | `0` | Minimum estimated monthly visits. |
63
+ | `maxVisits` | `integer` | `0` | Optional maximum estimated monthly visits. |
64
+ | `category` | `string` | `` | Website category filter. |
65
+ | `country` | `string` | `` | ISO-2 country code. |
66
+ | `hasAiTraffic` | `boolean` | `False` | Keep sites with detected AI referral traffic. |
67
+ | `onlyGrowing` | `boolean` | `False` | Keep sites with positive traffic growth. |
68
+ | `minGrowthPercent` | `number` | `0` | Minimum growth percentage. |
69
+ | `keyword` | `string` | `` | Match a domain or site name. |
70
+ | `trafficSource` | `string` | `` | Traffic source to filter by. |
71
+ | `maxBounce` | `number` | `0` | Optional maximum bounce rate. |
72
+ | `minPagesPerVisit` | `number` | `0` | Minimum pages per visit. |
73
+ | `maxResults` | `integer` | `100` | Maximum number of returned rows. |
74
+ | `sortBy` | `string` | `visits` | Public field used to order results. |
75
+ | `sortOrder` | `string` | `desc` | Ascending or descending order. |
76
+ | `outputPreset` | `string` | `outreach` | Choose a public result layout. |
77
+ | `domains` | `array` | `[]` | Domains to inspect directly. |
78
+ | `similarTo` | `string` | `` | Domain used to discover similar websites. |
79
+
80
+ The complete, versioned schema is also available on the [Actor page](https://apify.com/apivault_labs/website-traffic-database).
81
+
82
+ ## Pricing
83
+
84
+ Pay per delivered result through Apify, starting around **$7/1,000 results** on paid tiers. Free-plan pricing and platform usage can differ; check the Actor page before large runs.
85
+
86
+ ## Examples
87
+
88
+ - `examples/quickstart.py` — first run
89
+ - `examples/bulk_analysis.py` — expand a target list
90
+ - `examples/export_csv.py` — save flat result fields
91
+ - `examples/save_json.py` — preserve nested output
92
+ - `examples/cost_estimate.py` — estimate result-event charges
93
+ - `examples/environment_token.py` — keep credentials out of code
94
+
95
+ ## Architecture and privacy
96
+
97
+ This repository is intentionally a thin API client. Collection, retries, analysis and billing run inside the hosted Apify Actor. No private implementation, credentials, scoring weights or infrastructure configuration are included.
98
+
99
+ ## License
100
+
101
+ MIT. The hosted Actor is a separate paid service governed by Apify terms.
@@ -0,0 +1,11 @@
1
+ LICENSE
2
+ README.md
3
+ pyproject.toml
4
+ website_traffic_database/__init__.py
5
+ website_traffic_database/client.py
6
+ website_traffic_database/exceptions.py
7
+ website_traffic_database.egg-info/PKG-INFO
8
+ website_traffic_database.egg-info/SOURCES.txt
9
+ website_traffic_database.egg-info/dependency_links.txt
10
+ website_traffic_database.egg-info/requires.txt
11
+ website_traffic_database.egg-info/top_level.txt
@@ -0,0 +1 @@
1
+ website_traffic_database