Scrape various Untappd web pages and return as parsed dataclasses
Project description
Untappd Scraper
Web scrape public Untappd pages into data classes.
Quickstart
User queries
from untappd_scraper.user import User
users = ["gregavola"]
for user_id in users:
user = User(user_id)
print(f"\n{user.name=}")
for checkin in user.activity():
print(f"\n\t{checkin.name=}\n\t\t{checkin}")
print("\n\nLists:")
for userlist in user.lists():
print(f"\n\t{userlist.name=} {userlist.num_items=}")
print("\n\nRecent Venues:")
for venue in user.venue_history():
ago = datetime.now().date() - venue.last_visit
print(
f"\n\t{venue.name=} {venue.last_visit.strftime('%b %d %Y')} "
+ f"({ago.days} days ago)"
)```
print("\n\nRecent Uniques:")
for beer in user.beer_history():
print(f"\t{beer}, {beer.total_checkins=}")
Venue queries
from untappd_scraper.venue import Venue
venue_ids = [
14705, # 4 pines
99967, # collaroy
]
for venue_id in venue_ids:
venue = Venue(venue_id)
print(f"\n{venue.name=}")
for num, checkin in enumerate(venue.activity(), start=1):
print(f"\n\t{num=}\t{checkin.name=}\n\t\t{checkin}")
# Load a venue by name. Try to be as unambiguous as possible
venue = Venue.from_name("hotel sweeney")
print(f"\n{venue.name=} {venue.verified=}\t{venue.categories=}\n")
print("\n".join([str(beer) for beer in venue.activity()]))
for menu in venue.menus():
print(f"\n{menu.selection=} / {menu.name=}")
print("\n\t\t", end="")
print("\n\t\t".join(str(beer) for beer in menu.beers))
Notes
untappd-scraper is just that - a scraper. It doesn't store data. So, for example,
if you query a user's unique beer history (with User.beer_history()) you will not
be able to see the entire history. Just what is public on the web, which is the most
recent 25 uniques.
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 untappd_scraper-0.12.1.tar.gz.
File metadata
- Download URL: untappd_scraper-0.12.1.tar.gz
- Upload date:
- Size: 300.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
efaf231ac5f4c7ee1977aea8b7d3ad3bcf0d34352ae3fd47ea048d3108c8bc72
|
|
| MD5 |
03be29e103026ce85b9527065eb7d952
|
|
| BLAKE2b-256 |
0d55f40fa90bbe3b75cf94584736f0ac9748b87f821fb60b9e48cd8f10f4733e
|
File details
Details for the file untappd_scraper-0.12.1-py3-none-any.whl.
File metadata
- Download URL: untappd_scraper-0.12.1-py3-none-any.whl
- Upload date:
- Size: 35.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee0dba052a5bbc850697662ef263c2182ae64eae1b3346e4be7c23134ffc2236
|
|
| MD5 |
a2f468932c70e85e32daa054d78cdd93
|
|
| BLAKE2b-256 |
67a118c0496ec17cd66fb59329066830acba7069024d4f73f997a1b76f960354
|