Skip to main content

A scrapper for ModDB Mod and Game pages

Project description

ModDB Reader

Library is now stable

The goal of the library is to be able to navigate ModDB purely programmatically through scraping and parsing of the various models present on the website. This is based off a command of my bot which can parse either a game or a mod, this command gave birth to the original library which was extremely limited in its abilities and only able to parse a few pages with inconsistencies. This library is a much more mature and professional attempt at the whole idea, adding on a much deeper understanding of OOP.

Basic Usage

The simplest way to use this library is to simply pass a ModDB url to the parse function and let the magic happen.

import moddb
mod = moddb.parse_page("http://www.moddb.com/mods/edain-mod")
print(mod.name) #Edain Mod

The library tries to get the type of the url you are passing on its own but due to inconsistencies in the ModDB site this is not always correct, if you desire to be more specific you can pass a ThumbnailType to the function.

import moddb
mod = moddb.parse_page("http://www.moddb.com/mods/edain-mod", page_type=moddb.ThumbnailType.mod)
print(mod.name) #Edain Mod

Advanced Usage

Check out the documentation for more information

Support

Installing

You can get it from pypi: https://pypi.org/project/moddb

pip install moddb

Models

  • Mod
  • Game
  • Engine
  • File
  • Media
  • Addon
  • Article
  • Blog
  • User
  • Team
  • Group
  • Job
  • Search Page
  • Front Page
  • Platforms
  • Software
  • HardwAre
  • Updates
  • Friend Requests
  • Watchers
  • Tags

Maybe

  • Messages
  • Threads

Glossary

  • Partial[Model]: A version of the model which does not contain all the attributes of the full model. Mainly because that model is being displayed as a preview in another page. Not to confuse with Thumbnails, Thumbnails are only guaranteed to contain a name and url of the page.
  • Boxes: Containers present on pages, a div tag which contains information around a certain theme and as such have been grouped into Box Models of such.
  • Pages: Another name for Models.
  • Thumbnails: A very widely used model meant to represent models which are references but not expanded onto. Usually the model in question will only include a url and the name of the page. This is transformed into a thumbnail and the user can then parse it with the built-in method.

Development

requirement.txt file contains the necessary additional libraries for develompment

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moddb-0.8.0.tar.gz (48.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moddb-0.8.0-py3-none-any.whl (58.5 kB view details)

Uploaded Python 3

File details

Details for the file moddb-0.8.0.tar.gz.

File metadata

  • Download URL: moddb-0.8.0.tar.gz
  • Upload date:
  • Size: 48.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.13

File hashes

Hashes for moddb-0.8.0.tar.gz
Algorithm Hash digest
SHA256 4f7dde5da34d1404aff4ee440d5a67b65d031ea38bf23245fdd1fe1465b6941e
MD5 ed3da356e3f6ff448c575f3180ef69b9
BLAKE2b-256 3116f1abb03137cd52ca35f79e34a59ccb9a7f10ac395bca6768b623e6e9844e

See more details on using hashes here.

File details

Details for the file moddb-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: moddb-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 58.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.13

File hashes

Hashes for moddb-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 86af6fc890e27224973f7fb76135ed6783a7363e0908e15a46f533d7e778125c
MD5 7d94f36889bac5478742f8268786c48d
BLAKE2b-256 01375bc96f83b07c4140e67d85d332def0536ed8346c8242b0f39b7a3f353267

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page