Skip to main content
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](http://kmonsoor.mit-license.org/)
[![PyPI version](https://badge.fury.io/py/embedX.svg)](https://badge.fury.io/py/embedX)
[![Code Issues](https://www.quantifiedcode.com/api/v1/project/69f2bf7e3b404e6c90015053e48a1cbf/badge.svg)](https://www.quantifiedcode.com/app/project/69f2bf7e3b404e6c90015053e48a1cbf)

# embedX

Generate embeddable HTML or JavaScript code for a online content from its URL in a single step.

The content can be anything like

* Youtube or Vimeo video,
* Twitter status,
* Github Gist,
etc.


Embeddable code-generation be simple like this:

>>> from embed_x import OnlineContent
>>> oc = OnlineContent('http://www.youtube.com/embed/_lOT2p_FCvA')
>>> oc.get_embed_code()
"<div class='embedx-yt'><iframe src='http://www.youtube.com/embed/_lOT2p_FCvA' 'frameborder='0' allowfullscreen></iframe></div>"



### Currently, supports

* Youtube video,
* Vimeo video,
* Twitter: single status,
* Github gist,
* Flickr image



### Examples of URLs

#### Valid

* http://youtu.be/_lOT2p_FCvA
* www.youtube.com/watch?v=_lOT2p_FCvA&feature=feedu
* http://www.youtube.com/embed/_lOT2p_FCvA
* https://www.youtube.com/watch?v=rTHlyTphWP0&index=6&list=PLjeDyYvG6-40qawYNR4juzvSOg-ezZ2a6
* youtube.com/watch?v=_lOT2p_FCvA
* https://vimeo.com/groups/animation/videos/150618894/
* https://vimeo.com/150519302
* https://twitter.com/codinghorror/status/686254714938200064
*

#### Invalid:

* youtu.be/watch?v=_lOT2p_FCvA [ because Youtube don't give any url like this ]
* https://twitter.com/gvanrossum/with_replies
*



## Install

### from PyPI

pip install embedx

### Directly from source

pip install git+https://github.com/kmonsoor/embedX.git

## Requirements

This library don't have any external dependencies other than standard Python installation.


## Usage

>>> from embedx import OnlineContent
>>> oc = OnlineContent('http://www.youtube.com/embed/_lOT2p_FCvA')
>>> oc.extract_id()
'_lOT2p_FCvA'

>>> oc.get_embed_code()
"<div class='embed-container'><iframe src='http://www.youtube.com/embed/_lOT2p_FCvA' 'frameborder='0'allowfullscreen></iframe></div>"

>>> oc = OnlineContent('https://vimeo.com/groups/animation/videos/150618894/')
>>> oc.get_embed_code()
"<div class='embed-container'> <iframe src='http://player.vimeo.com/video/150618894' frameborder='0' webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>"



## To-do

* Create test cases for automated testing
* Provision Travis-CI for automatic building & testing
* Add support for [conda](http://conda.pydata.org/docs/index.html)-based installation
* Add more rich-content sites

- [x] Github gists
- [ ] Facebook status
- [ ] Facebook notes
- [ ] Scribd docs
- [ ] Imgur images


## Contributors

* Seed idea : [A StackOverflow answer](http://stackoverflow.com/a/7936523) by [Mikhail Kashkin](http://stackoverflow.com/users/85739/mikhail-kashkin)
* Author : [Khaled Monsoor](http://github.com/kmonsoor)
*

Please try to contribute by submitting more content-sites with their different link formats and embed-codes. You can submit through pull-requests or by creating issue.

Download files

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

Source Distribution

embedx-0.0.7.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

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

embedx-0.0.7-py2.py3-none-any.whl (8.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file embedx-0.0.7.tar.gz.

File metadata

  • Download URL: embedx-0.0.7.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for embedx-0.0.7.tar.gz
Algorithm Hash digest
SHA256 7e329c0af0fa927ef9b53e7fdb153d621249b0462581c4a46d8faa063be76a2e
MD5 9946b36121313538c9c07b3cd40d3562
BLAKE2b-256 0a0ed29b5c9727c9e5d516a23d771a5c083a78256095195a9db49e6e05613fd6

See more details on using hashes here.

File details

Details for the file embedx-0.0.7-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for embedx-0.0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 c839247eb29f61b0646f6f8dcdbcd79c305bc775b415be6af796c2e81560336e
MD5 128d405e2111099572c32f8064678f8f
BLAKE2b-256 cb43e4e41f23e822c913003b7a0814d3b6514ed19c66eea180220232cab031ac

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.0.7 This release

2 files

0.0.6

1 file

0.0.5

1 file

0.0.4

1 file

0.0.3

2 files

Supported by

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