Mercurial > repos > pablocarb > synbiodesign
annotate rpviz/py2html2.py @ 30:0ad6fda90f41 draft default tip
planemo upload commit f74fd52b330cc7460d98121b9bb78c08ca915d1e
| author | pablocarb | 
|---|---|
| date | Thu, 29 Aug 2019 06:59:58 -0400 | 
| parents | fe78fd6b315a | 
| children | 
| rev | line source | 
|---|---|
| 
16
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
1 # -*- coding: utf-8 -*- | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
2 """ | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
3 Created on Wed Jun 5 16:07:03 2019 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
4 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
5 @author: anael | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
6 """ | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
7 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
8 import json | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
9 import os | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
10 from bs4 import BeautifulSoup | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
11 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
12 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
13 def html2(jsondata,outfile): | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
14 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
15 htmlfile= open(os.path.join("new_html","template2.html")) | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
16 soup = BeautifulSoup(htmlfile, 'html.parser') | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
17 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
18 for key in jsondata.keys(): | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
19 name=key | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
20 obj=json.loads(jsondata[key]) | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
21 elements=obj['elements'] | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
22 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
23 element_script=soup.find(id="elements") #select the script section containing elements | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
24 element_script.append('\n var '+name+'='+str(elements)) #to modify | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
25 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
26 form=soup.find('form') | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
27 new_tag = soup.new_tag("input") | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
28 new_tag["type"] = "button" | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
29 new_tag["value"]=name | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
30 new_tag["onclick"]="displaynet("+name+')' | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
31 form.append(new_tag) | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
32 try: | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
33 select=soup.find(id="selectbox") | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
34 new_tag=soup.new_tag("option") | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
35 new_tag["value"]=str(name) | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
36 new_tag.append(name) | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
37 select.append(new_tag) | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
38 except: | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
39 continue | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
40 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
41 htmlfile.close() | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
42 | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
43 html = soup.prettify("utf-8") | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
44 with open(os.path.join(outfile), "wb") as file: | 
| 
 
fe78fd6b315a
planemo upload commit 87db86a34f2d92eb2c9756bf9ee53ae2970554d5
 
pablocarb 
parents:  
diff
changeset
 | 
45 file.write(html) | 
