我当前的R脚本根据给定的Chemspider id解析来自http://www.chemspider.com的化学同义词名称,在本例中为" Irganox 1076" (代码取自Scraping experimentally measured physicochemical properties and synonyms from Chemspider in R):
library(XML)
csid <- "15539"
url <- paste0("http://www.chemspider.com/Chemical-Structure.",csid,".html")
doc <- htmlTreeParse(url,useInternal=T)
synNodes <- getNodeSet(doc,'//div[@id="synonymsTab"]/div/div/div/p[@class="syn"]')
synonyms <- sapply(synNodes,function(x)xmlValue(getNodeSet(x,"./strong")[[1]]))
synonyms
结果:
[1] "3-[4-Hydroxy-3,5-bis(2-méthyl-2-propanyl)phényl]propanoate d'octadécyle" "benzenepropanoic acid, 3,5-bis(1,1-dimethylethyl)-4-hydroxy-, octadecyl ester"
[3] "Octadecyl 3-(3,5-di-tert-butyl-4-hydroxyphenyl)propanoate" "Octadecyl 3-(3,5-di-tert-butyl-4-hydroxyphenyl)propionate"
[5] "Octadecyl 3,5-di-t-butyl-4-hydroxyhydrocinnamate" "Octadecyl 3,5-di-tert-butyl-4-hydroxyhydrocinnamate"
[7] "octadecyl 3-[3,5-bis(tert-butyl)-4-hydroxyphenyl]propanoate" "Octadecyl 3-[4-hydroxy-3,5-bis(2-methyl-2-propanyl)phenyl]propanoate"
[9] "Octadecyl-3-(3,5-di-tert.butyl-4-hydroxyphenyl)-propionate" "Octadecyl-3-[4-hydroxy-3,5-bis(2-methyl-2-propanyl)phenyl]propanoat"
问题: 不幸的是,脚本只显示了Chemspider的初步结果。一旦您手动点击&#34;更多...&#34; http://www.chemspider.com网站会显示包含更多同义词的扩展列表。按钮。
问题: 如何修改脚本以使脚本的结果包含扩展的同义词列表。
答案 0 :(得分:2)
这似乎运作得相当好
library(XML)
csid <- "15539"
url <- paste0("http://www.chemspider.com/Chemical-Structure.",csid,".html")
doc <- htmlTreeParse(url,useInternal=T)
synNodes <- getNodeSet(doc,'//div[@id="synonymsTab"]//p[@class="syn"]')
synonyms <- sapply(synNodes,function(x)xmlValue(getNodeSet(x,"./*[1]")[[1]]))
答案 1 :(得分:1)
例如,为了获得与阿司匹林相关的所有同义词,您可以执行以下操作:http://parts.chemspider.com/JSON.ashx?op=GetRecordsAsCompounds&csids[0]=2157&serfilter=Compound[Synonyms]或此http://parts.chemspider.com/JSON.ashx?op=GetRecordsAsCompounds&csids[0]=2157以获取有关指定化合物的所有信息。