Skip to main content

Flexible multimodal scraper for social media and the open web.

Project description

scrapeMM: Multimodal Web Retrieval

Simple web scraper to asynchronously retrieve webpages and access social media contents, fetching text along with media, i.e., images and videos.

This library aims to help developers and researchers to easily access multimodal data from the web and use it for LLM processing.

Setup

If you want to download videos, the installation of ffmpeg is highly recommended. In Conda, you can install it with conda install -c conda-forge ffmpeg.

Usage

from scrapemm import retrieve
import asyncio

url = "https://example.com"
loop = asyncio.get_event_loop()
result = loop.run_until_complete(retrieve(url))
result.render()

scrapeMM will ask you for the API keys needed for the social media integrations. You may skip them if you don't need them. You will also be prompted to choose a password that is used to secure the secrets in an encrypted file.

How it works

Input:                                  Output:
URL (string)   -->   retrieve()   -->   MultimodalSequence

The MultimodalSequence is a sequence of Markdown-formatted text and media provided by the ezMM library.

Web scraping is done with Firecrawl and Decodo.

Supported Platforms

Social Media

  • ✅ X/Twitter
  • ✅ Telegram
  • ✅ Bluesky
  • ✅ TikTok
  • ✅ YouTube
  • (✅️) Instagram: works for most content
  • ⏳ Facebook: done for videos but not for images yet
  • ❌ Threads: TBD
  • ❌ Reddit: TBD

Archiving Services

  • ❌ Perma.cc
  • ❌ Archive.today
  • ❌ Wayback Machine, Internet Archive (web.archive.org)
  • ❌ AwesomeScreenshot.com
  • ⏳ MediaVault (mvau.lt): Works for images but not for videos yet
  • ❌ Ghost Archive (ghostarchive.org)

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

scrapemm-0.5.3.tar.gz (47.1 kB view details)

Uploaded Source

Built Distribution

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

scrapemm-0.5.3-py3-none-any.whl (57.0 kB view details)

Uploaded Python 3

File details

Details for the file scrapemm-0.5.3.tar.gz.

File metadata

  • Download URL: scrapemm-0.5.3.tar.gz
  • Upload date:
  • Size: 47.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for scrapemm-0.5.3.tar.gz
Algorithm Hash digest
SHA256 8b20fd5b337221300b533dc09acf49f7a0b7d9ebb249d625512117050c4e8742
MD5 b39047f4ca5adcaef171db7914562fe0
BLAKE2b-256 967cbb0ece06818c126913e410738f68fc7415a24aa0dba5789b4194ada11608

See more details on using hashes here.

File details

Details for the file scrapemm-0.5.3-py3-none-any.whl.

File metadata

  • Download URL: scrapemm-0.5.3-py3-none-any.whl
  • Upload date:
  • Size: 57.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for scrapemm-0.5.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f23d91f773a2e122f74579719ab1be124a92e6c37c3710efcb8dc441586c4ed5
MD5 b3bf9de7a4d9cf7a9e4e620fcb561a69
BLAKE2b-256 fc1be75c39abbfbeab070816e220ce8893b792f82e37b5740adc40add9c3f8b2

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