raannakasturi
commited on
Commit
·
3294248
1
Parent(s):
b80eb1d
Update .gitignore to exclude .html and .js files along with BLOGGER directory
Browse files- .gitignore +3 -1
- post_blog.py +53 -44
.gitignore
CHANGED
@@ -1,4 +1,6 @@
|
|
1 |
.env
|
2 |
/__*
|
3 |
*.json
|
4 |
-
/BLOGGER
|
|
|
|
|
|
1 |
.env
|
2 |
/__*
|
3 |
*.json
|
4 |
+
/BLOGGER
|
5 |
+
.html
|
6 |
+
.js
|
post_blog.py
CHANGED
@@ -16,15 +16,6 @@ refresh_token = os.getenv('REFRESH_TOKEN')
|
|
16 |
blog_id = os.getenv('BLOG_ID')
|
17 |
imgbb_api_key = os.getenv('IMGBB_API_KEY')
|
18 |
|
19 |
-
def generate_mindmap_svg(title, mindmap):
|
20 |
-
data = "# " + title + "\n" + mindmap
|
21 |
-
client = Client("raannakasturi/MarkdownToSVG")
|
22 |
-
result = client.predict(
|
23 |
-
markdown_text=data,
|
24 |
-
api_name="/markdown_svg_generator"
|
25 |
-
)
|
26 |
-
return result.strip()
|
27 |
-
|
28 |
def generate_post_html(doi, title, category, summary, mindmap, citation):
|
29 |
doi = doi.split("https://")[-1]
|
30 |
print(f"Generating post for {doi}")
|
@@ -35,23 +26,63 @@ def generate_post_html(doi, title, category, summary, mindmap, citation):
|
|
35 |
citation = citation.replace("{", r'{').replace("}", r'}')
|
36 |
citation = mistune.html(citation.replace("&", "&").strip())
|
37 |
image = fetch_image(title, summary, imgbb_api_key)
|
38 |
-
# svg_url = generate_mindmap_svg(title, mindmap)
|
39 |
html_summary = mistune.html(summary)
|
40 |
post = f"""
|
41 |
-
|
42 |
-
<script
|
43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
<style>
|
45 |
.markmap {{
|
46 |
position: relative;
|
47 |
}}
|
|
|
48 |
.markmap > svg {{
|
49 |
width: 100%;
|
50 |
border: 2px solid #000;
|
51 |
height: 80dvh;
|
52 |
}}
|
53 |
</style>
|
54 |
-
<img style="display:block; width:100%; height:100%;" id="paper_image"
|
|
|
|
|
55 |
<br>
|
56 |
<b>{{getToc}} $title={{Table of Contents}}</b>
|
57 |
<br>
|
@@ -60,11 +91,12 @@ def generate_post_html(doi, title, category, summary, mindmap, citation):
|
|
60 |
</div>
|
61 |
<br>
|
62 |
<h2>Mindmap</h2>
|
63 |
-
<p><small><em>If MindMap doesn't load, go to the <a href="/">Homepage</a> and visit blog again or <a
|
64 |
-
|
|
|
65 |
<script type="text/template">
|
66 |
-
|
67 |
-
|
68 |
</div>
|
69 |
<br>
|
70 |
<h2>Citation</h2>
|
@@ -73,29 +105,6 @@ def generate_post_html(doi, title, category, summary, mindmap, citation):
|
|
73 |
</div>
|
74 |
</div>
|
75 |
"""
|
76 |
-
# post = f"""
|
77 |
-
# <div id="paper_post" data={doi}>
|
78 |
-
# <h1 id="paper_title">{title}</h1>
|
79 |
-
# <small><em>DOI: <a href="https://{doi}" target="_blank">{doi}</a></em></small>
|
80 |
-
# <em>Category: {category}</em>
|
81 |
-
# <br>
|
82 |
-
# <img style="display:block; width:100%; height:100%;" id="paper_image" src="{image.strip()}" alt="{title.strip()}">
|
83 |
-
# <br>
|
84 |
-
# <div id="paper_summary">
|
85 |
-
# {html_summary.replace("&", "&").strip()}
|
86 |
-
# </div>
|
87 |
-
# <br>
|
88 |
-
# <h2>Mindmap</h2>
|
89 |
-
# <div id="paper_mindmap">
|
90 |
-
# {repr(mindmap.replace("&", "&").strip())}
|
91 |
-
# </div>
|
92 |
-
# <br>
|
93 |
-
# <h2>Citation</h2>
|
94 |
-
# <div id="paper_citation">
|
95 |
-
# {citation.replace("&", "&").strip()}
|
96 |
-
# </div>
|
97 |
-
# </div>
|
98 |
-
# """
|
99 |
return post, image
|
100 |
|
101 |
def create_post(doi, title, category, summary, mindmap, citation):
|
@@ -103,9 +112,9 @@ def create_post(doi, title, category, summary, mindmap, citation):
|
|
103 |
post_category = f"{category}"
|
104 |
try:
|
105 |
post_body, post_image = generate_post_html(doi, title, category, summary, mindmap, citation)
|
106 |
-
with open('post.html', 'w') as f:
|
107 |
-
|
108 |
-
exit(code=0)
|
109 |
except Exception as e:
|
110 |
print(f"Error generating post: {e}")
|
111 |
return None, None, None, None
|
|
|
16 |
blog_id = os.getenv('BLOG_ID')
|
17 |
imgbb_api_key = os.getenv('IMGBB_API_KEY')
|
18 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
def generate_post_html(doi, title, category, summary, mindmap, citation):
|
20 |
doi = doi.split("https://")[-1]
|
21 |
print(f"Generating post for {doi}")
|
|
|
26 |
citation = citation.replace("{", r'{').replace("}", r'}')
|
27 |
citation = mistune.html(citation.replace("&", "&").strip())
|
28 |
image = fetch_image(title, summary, imgbb_api_key)
|
|
|
29 |
html_summary = mistune.html(summary)
|
30 |
post = f"""
|
31 |
+
<div id="paper_post">
|
32 |
+
<script>
|
33 |
+
window.markmap = {{
|
34 |
+
autoLoader: {{
|
35 |
+
toolbar: true,
|
36 |
+
}},
|
37 |
+
}};
|
38 |
+
</script>
|
39 |
+
<script src="https://cdn.jsdelivr.net/npm/markmap-autoloader@latest"></script>
|
40 |
+
<script>
|
41 |
+
window.addEventListener('load', function() {{
|
42 |
+
setTimeout(function() {{
|
43 |
+
const element = document.querySelector('div.mm-toolbar-item[title="Fit window size"]');
|
44 |
+
console.log(element);
|
45 |
+
if (element) {{
|
46 |
+
element.click();
|
47 |
+
}} else {{
|
48 |
+
console.log('Element not found');
|
49 |
+
}}
|
50 |
+
}}, 0);
|
51 |
+
}});
|
52 |
+
</script>
|
53 |
+
<script>
|
54 |
+
window.addEventListener('load', function() {{
|
55 |
+
const anchor = document.querySelector('a.mm-toolbar-brand');
|
56 |
+
if (anchor) {{
|
57 |
+
anchor.href = '/';
|
58 |
+
const img = anchor.querySelector('img');
|
59 |
+
if (img) {{
|
60 |
+
img.src = 'data:image/png;base64,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';
|
61 |
+
img.alt = 'ReXplore';
|
62 |
+
}}
|
63 |
+
const span = anchor.querySelector('span');
|
64 |
+
if (span) {{
|
65 |
+
span.textContent = 'ReXplore';
|
66 |
+
}}
|
67 |
+
}} else {{
|
68 |
+
console.log('Anchor element not found');
|
69 |
+
}}
|
70 |
+
}});
|
71 |
+
</script>
|
72 |
<style>
|
73 |
.markmap {{
|
74 |
position: relative;
|
75 |
}}
|
76 |
+
|
77 |
.markmap > svg {{
|
78 |
width: 100%;
|
79 |
border: 2px solid #000;
|
80 |
height: 80dvh;
|
81 |
}}
|
82 |
</style>
|
83 |
+
<img style="display:block; width:100%; height:100%;" id="paper_image"
|
84 |
+
src="{image.strip()}"
|
85 |
+
alt="{title.strip()}">
|
86 |
<br>
|
87 |
<b>{{getToc}} $title={{Table of Contents}}</b>
|
88 |
<br>
|
|
|
91 |
</div>
|
92 |
<br>
|
93 |
<h2>Mindmap</h2>
|
94 |
+
<p><small><em>If MindMap doesn't load, go to the <a href="/">Homepage</a> and visit blog again or <a
|
95 |
+
href="/#">Switch to Android App (Under Development)</a>.</em></small></p>
|
96 |
+
<div class="markmap" id="paper_mindmap">
|
97 |
<script type="text/template">
|
98 |
+
{mindmap.replace("&", "&").replace(":", "=>").strip()}
|
99 |
+
</script>
|
100 |
</div>
|
101 |
<br>
|
102 |
<h2>Citation</h2>
|
|
|
105 |
</div>
|
106 |
</div>
|
107 |
"""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
108 |
return post, image
|
109 |
|
110 |
def create_post(doi, title, category, summary, mindmap, citation):
|
|
|
112 |
post_category = f"{category}"
|
113 |
try:
|
114 |
post_body, post_image = generate_post_html(doi, title, category, summary, mindmap, citation)
|
115 |
+
# with open('post.html', 'w') as f:
|
116 |
+
# f.write(post_body)
|
117 |
+
# exit(code=0)
|
118 |
except Exception as e:
|
119 |
print(f"Error generating post: {e}")
|
120 |
return None, None, None, None
|