blob: de157af71457ce22c1c53818f4c159a821bb4df3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
from django.conf import settings
from bs4 import BeautifulSoup
from medium import Client
def absolute_urls_for_syndication(s):
soup = BeautifulSoup(s, "lxml")
for a in soup.find_all('a'):
if a['href'][:1] == "/":
a['href'] = "https://luxagraf.net%s" % a['href']
print(soup)
def post_to_medium(item):
client = Client(application_id=settings.MEDIUM_CLIENT_ID, application_secret=settings.MEDIUM_CLIENT_SECRET)
client.access_token = settings.MEDIUM_INT_TOKEN
user = client.get_current_user()
head = '<p><i>This was originally posted <a href="https://luxagraf.net%s" rel="canonical">on my own site</a>.</i></p>' % item.get_absolute_url()
body = "%s %s" % (head, absolute_urls_for_syndication(item.body_html))
# Create a post.
post = client.create_post(
user_id=user["id"],
title=item.title,
content=body,
content_format="html",
publish_status="public",
canonicalUrl="https://luxagraf.net%s" % item.get_absolute_url(),
license="all-rights-reserved"
)
return post["url"]
|