RapidUnfurl
RapidUnfurl is a Python library designed to pull and process metadata very quickly to unfurl URL contents into a JSON object that can the be used by other programs for portraying that data, similar to how link expansion works in apps like Slack.
This library was originally forked from Loftie Ellis' pyunfurl library, which is an awesome project. I just wanted to do some things to speed up the process, and drop away the html rendering, which I didn't need.
Features
- Supports all oEmbed providers from https://oembed.com/ and https://noembed.com/ by default.
- Supports the autodiscovery part of the oEmbed spec.
- Support for Open Graph protocol.
- Support for Twitter Cards
- Falls back to Meta tags and the site favicon/title if all else fails.
Installation
Use the package manager pip to install pyunfurl.
pip install rapidunfurl
Usage
import rapidunfurl
rapidunfurl.unfurl('https://davintaddeo.com')
This will return a dict similar to the oembed spec:
{
"type": "website",
"url": "https://davintaddeo.com",
"title": "Davin Taddeo | DevOps Advocate",
"site_name": "@tdarwin",
"description": "Homepage of Davin Taddeo, DevOps Advocate, Senior Customer Architect for Chef",
"image": "https://davintaddeo.com/assets/images/round_headshot.png",
"card": "summary",
"favicon": "https://davintaddeo.com/favicon.ico"
}
Contributing
Pull requests are welcome. RapidUnfurl supports some custom integrations for sites that doesnt return any meta tags, if you want to improve the integration for a specific site you can look at the hackernews example.
License
Release files for rapidunfurl 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rapidunfurl-1.1.0.tar.gz | 16.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rapidunfurl-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.9 kB
Release files / rapidunfurl-1.1.0.tar.gz
| Download URL | rapidunfurl-1.1.0.tar.gz |
|---|---|
| Size | 16.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
78f7dc4090a0a4dbb57ea81a58c91d9ddf8094ad3d0e19121249f65f892634bf
|
|
BLAKE2b-256 checksum How to use checksums |
d6a4004812b73f43b6230f66700de3db1aee08705235b666a66ab69ee83b94a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.9.12
|
Release files / rapidunfurl-1.1.0-py3-none-any.whl
| Download URL | rapidunfurl-1.1.0-py3-none-any.whl |
|---|---|
| Size | 16.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c2b39b4156763fd265592e7cbf20e41aa86da3be48a0d8dcb60625c1b738161d
|
|
BLAKE2b-256 checksum How to use checksums |
61c28d6c4a94ab0d088d148ca151cc186fc3b1371db414ac24cda6f555c76130
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.9.12
|