Posts your html to telegra.ph blogging service
Project description
Python html to telegra.ph poster
Simple python function to post plain html text to https://telegra.ph/.
Telegra.ph allows <a>, <blockquote>, <br>, <em>, <figure>, <h3>, <h4>, <img>, <p>, <strong>,
elements.
It also supports embedded youtube and vimeo iframe tags.
About telegram telegra.ph service https://telegram.org/blog/instant-view
Requirements
- lxml
- requests
- requests_toolbelt
Installation
pip install html-telegraph-poster
Usage
>>> from html_telegraph_poster import TelegraphPoster
>>> t = TelegraphPoster(use_api=True)
>>> t.create_api_token('Elon Musk', 'Elon', 'https://www.spacex.com/') # second and third params are optional
{'access_token': '9f3bab568f*************', 'auth_url': 'https://edit.telegra.ph/auth/HFYo***********', 'author_name': 'Elon', 'short_name': 'Elon Musk', 'author_url': 'https://www.spacex.com/'}
>>> t.post(title='Just another funny joke', author='by me', text='<blockquote>Really hard way</blockquote>')
{'path': 'Just-another-funny-joke-06-05-4', 'url': 'http://telegra.ph/Just-another-funny-joke-06-05-4'}
Use graph.org instead of telegra.ph
>>> t = TelegraphPoster(use_api=True, telegraph_api_url='https://api.graph.org')
We can modify this article later:
>>> t.edit(text=t.text + '<p>some text at the end</p>')
{'path': 'Just-another-funny-joke-06-05-4', 'url': 'http://telegra.ph/Just-another-funny-joke-06-05-4'}
Modify page created earlier:
>>> t.edit(text="<p>new text</p>", path='/Another-one-page-06-05')
{'path': 'Another-one-page-06-05', 'url': 'http://telegra.ph/Another-one-page-06-05'}
Generate persistent access token
Actually it's a good idea to generate access token and put it inside environment variables.
This command will generate .env file or append TELEGRAPH_ACCESS_TOKEN at the end of it.
Note: script will not set environment variable. You can use python-dotenv,
set it manually or hardcode it when call TelegraphPoster(access_token='access_token_string')
python -m html_telegraph_poster.create_account "Elon Musk" "Elon" "https://www.spacex.com/"
Uploading images
from html_telegraph_poster.upload_images import upload_image
# upload file
upload_image("file_path.jpg")
# upload url
upload_image("http://example.com/img.png")
# setting request and response timeout
upload_image("http://example.com/img.png", get_timeout=(5, 5), upload_timeout=(5, 5))
Utils module
Utils module provides ability to make some pre-process steps before document is passed to the converter.
Uploading all images to the telegra.ph
from html_telegraph_poster.utils import DocumentPreprocessor
dp = DocumentPreprocessor(html_string)
dp.upload_all_images()
dp.get_processed_html() # this should return html string with uploaded and replaced image urls
Optionally you can pass base_url if the document contains images with relative paths
dp.upload_all_images(base_url='https://example.com')
dp.get_processed_html()
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
File details
Details for the file html-telegraph-poster-0.5.0.tar.gz
.
File metadata
- Download URL: html-telegraph-poster-0.5.0.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01f4d120e2085e08c95adfc77ca8bfa07315c5784faa55478970e82c2518826a |
|
MD5 | 1cf182748031d94fc8d8943d9769201f |
|
BLAKE2b-256 | 46b30debb9489a47796a81a5d79c644cfb3cd85d6d74fc9691cbf0be0edeb99e |
File details
Details for the file html_telegraph_poster-0.5.0-py3-none-any.whl
.
File metadata
- Download URL: html_telegraph_poster-0.5.0-py3-none-any.whl
- Upload date:
- Size: 15.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a59d8ff2a17821de74e4c6753fb8501b6a60cc5dd632a624c8036e6639f1a597 |
|
MD5 | 628695c0ce856954057653a9ae228921 |
|
BLAKE2b-256 | 07afe953376f15dda76d54021302b7fbaca78fb5ae14caa4424e81ac0f0da6e2 |