Python wrapper to fetch a reverse engineered Eventim API.
Project description
[!NOTE] Consider the whole project as unstable until version 1.0.0 is reached.
pyventim
A Python module to fetch usable data with a reverse engineered Eventim API.
Description
The Eventim API has some public endpoints but also hidden data in the HTML responses. The project goal is to provide away to fetch this data with simple to use python objecs.
[!IMPORTANT] Be aware that the APIs of Eventim can change without notice and therefore break the module.
Getting Started
Dependencies
- Python >= 3.10
- Requests >= 2.31.0
- lxml >= 5.2.2
- Pydantic >= 2.7.0
Installing
pip install pyventim
Quick start
To find attractions we can use the exploration endpoint:
import pyventim
# Create the Eventim class
eventim = pyventim.Eventim()
# Returns an iterator that fetches all pages off the search endpoint.
attractions = eventim.explore_attractions(search_term="Landmvrks")
# We can loop over each attraction. The module handles fetching pages automatically.
for attraction in attractions:
print(attraction["attractionId"], attraction["name"])
Next we use the product group endpoint to fetch events for our attraction and get the events of the html endpoint.
# We loop over each product group and fetch the events automatically.
for product_group in eventim.explore_product_groups(search_term="Landmvrks"):
product_group_id = product_group["productGroupId"]
for event in eventim.get_product_group_events_from_calendar(product_group_id):
print(event["title"], event["eventDate"], event["price"], event["ticketAvailable"], sep=" | ")
For a more detailed information please refer to the documentation.
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Code of conduct
Please follow our code of conduct.
Finding help
The code documentation can be found here. However if you encounter a unexpected behaviour: Feel free to open an issue.
Contributing
All contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome.
If youre looking to work on the pyventim codebase:
- Fork the repository.
- Make your changes and follow common code practices as well as Python PEP standards.
- Open a merge request and follow the instructions.
- Be awesome!
For bug reports: Please head over to the issues page.
As contributors and maintainers to this project, you are expected to abide by pyeventim' code of conduct. More information can be found at: Contributor Code of Conduct
Thank you!
Thank you for contributing to this project!
Maintainers
*Preferred method of contact.
- Kilian Braun (*DeltaChat | Email)
Acknowledgments
- awesome-readme is a simple readme template!
- Open source checklist is good guide to follow if going open source!
- Contributor Covenant have an awesome code of conduct!
- DeltaChat is a great and simple privacy focused messanger app via email!
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
File details
Details for the file pyventim-0.2.0.tar.gz
.
File metadata
- Download URL: pyventim-0.2.0.tar.gz
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d45de89af18b403d01ccf6f7fb6a971bf34d00c93ff9300a1e61b416f65c9de8 |
|
MD5 | 9c7d2fbbe3f8a80de08df31f11cea6b9 |
|
BLAKE2b-256 | b99c09428434a8d4c45f62cf5f31be57213810d7c628e55e475cd947daf0b1f0 |
File details
Details for the file pyventim-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: pyventim-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46149e7a55bf530a55cb45c01d6f9937d5ca167a07e31c2c07c58e775ab5bf7d |
|
MD5 | 8b8042bfcf6a142a342ab862b4bda3aa |
|
BLAKE2b-256 | b6632437e4b3a3120ff6e8f0c8917448792aae311c0faad8b7c0e9e332845368 |