main.py now uses functions.py's extract_toot func
This commit is contained in:
		
							parent
							
								
									3e3f905839
								
							
						
					
					
						commit
						9bbd659bf5
					
				
							
								
								
									
										32
									
								
								main.py
								
								
								
								
							
							
						
						
									
										32
									
								
								main.py
								
								
								
								
							|  | @ -9,6 +9,7 @@ from os import path | ||||||
| from bs4 import BeautifulSoup | from bs4 import BeautifulSoup | ||||||
| import os, sqlite3, signal, sys, json, re | import os, sqlite3, signal, sys, json, re | ||||||
| import requests | import requests | ||||||
|  | import functions | ||||||
| 
 | 
 | ||||||
| scopes = ["read:statuses", "read:accounts", "read:follows", "write:statuses", "read:notifications"] | scopes = ["read:statuses", "read:accounts", "read:follows", "write:statuses", "read:notifications"] | ||||||
| cfg = json.load(open('config.json', 'r')) | cfg = json.load(open('config.json', 'r')) | ||||||
|  | @ -56,36 +57,7 @@ if "secret" not in cfg: | ||||||
| json.dump(cfg, open("config.json", "w+")) | json.dump(cfg, open("config.json", "w+")) | ||||||
| 
 | 
 | ||||||
| def extract_toot(toot): | def extract_toot(toot): | ||||||
| 	toot = toot.replace("'", "'") | 	toot = functions.extract_toot(toot) | ||||||
| 	toot = toot.replace(""", '"') |  | ||||||
| 	soup = BeautifulSoup(toot, "html.parser") |  | ||||||
| 	 |  | ||||||
| 	# this is the code that removes all mentions |  | ||||||
| 	for mention in soup.select("span.h-card"): |  | ||||||
| 		mention.a.unwrap() |  | ||||||
| 		mention.span.unwrap() |  | ||||||
| 	 |  | ||||||
| 	# replace <br> with linebreak |  | ||||||
| 	for lb in soup.select("br"): |  | ||||||
| 		lb.insert_after("\n") |  | ||||||
| 		lb.decompose() |  | ||||||
| 
 |  | ||||||
| 	# replace <p> with linebreak |  | ||||||
| 	for p in soup.select("p"): |  | ||||||
| 		p.insert_after("\n") |  | ||||||
| 		p.unwrap() |  | ||||||
| 	 |  | ||||||
| 	# fix hashtags |  | ||||||
| 	for ht in soup.select("a.hashtag"): |  | ||||||
| 		ht.unwrap() |  | ||||||
| 
 |  | ||||||
| 	# fix links |  | ||||||
| 	for link in soup.select("a"): |  | ||||||
| 		link.insert_after(link["href"]) |  | ||||||
| 		link.decompose() |  | ||||||
| 
 |  | ||||||
| 	toot = soup.get_text() |  | ||||||
| 	toot = toot.rstrip("\n") #remove trailing newline |  | ||||||
| 	toot = toot.replace("@", "@\u200B") #put a zws between @ and username to avoid mentioning | 	toot = toot.replace("@", "@\u200B") #put a zws between @ and username to avoid mentioning | ||||||
| 	return(toot) | 	return(toot) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Reference in New Issue