<p>So I'm downloading XML files from Kegg using BioConductor and and I'm running into a problem. If we look at <a href="https://www.genome.jp/pathway/hsa04066" rel="nofollow noreferrer">HIF-1 signaling pathway</a> we see the node <a href="https://www.kegg.jp/entry/hsa:1950+hsa:3479+hsa:3630" rel="nofollow noreferrer">growth factor (GF)</a> on the left hand side, we can trace it's XML entry to this entry:</p>
<pre><code>    &lt;entry id=&quot;17&quot; name=&quot;hsa:1950 hsa:3479 hsa:3630&quot; type=&quot;gene&quot;
        link=&quot;https://www.kegg.jp/dbget-bin/www_bget?hsa:1950+hsa:3479+hsa:3630&quot;&gt;
        &lt;graphics name=&quot;EGF, HOMG4, URG...&quot; fgcolor=&quot;#000000&quot; bgcolor=&quot;#BFFFBF&quot;
             type=&quot;rectangle&quot; x=&quot;87&quot; y=&quot;272&quot; width=&quot;46&quot; height=&quot;17&quot;/&gt;
    &lt;/entry&gt;
</code></pre>
<p>While there is no GF on this, there are the three info card links that I can use to extract information. However, when I click on that link, there isn't a place on those info cards that says that these three genes are related to that general title of GF.</p>
<p>Normally this isn't a problem, I would just look at the map, but I'm trying to do something at scale where I can't look at every instance of this.</p>
<p>So my question is, how do I find the labels that Kegg uses in its map using the XML file/python package?</p>

CC BY-SA 4.0
2022-09-27T00:43:15.513Z
Python's `Bio.KEGG.Gene` has an attribute called `name` described as "A list of the gene names". Might help? Otherwise "orthology" is its own universe. Last ditch attempt try `beautifulsoup` and webscraping. In theory webscraping will work because if you can access the links via clicking them `beautifulsoup` will do this too.
M__
CC BY-SA 4.0
2022-09-27T18:47:01.053Z
Thanks, I'll check out the `name` attribute! I'm trying to avoid scrapping at all costs cause this particular use case won't be pretty, but if it's all there is then...
Travasaurus
CC BY-SA 4.0
2022-09-28T08:52:18.033Z
How do you download the files from KEGG with Bioconductor? It might be easier to use Bioconductor to retrieve the gene names
llrs
CC BY-SA 4.0
2022-09-28T09:00:47.397Z
If you used KEGGREST you should be able to retrieve the gene names of each pathway: https://bioconductor.org/packages/release/bioc/vignettes/KEGGREST/inst/doc/KEGGREST-vignette.html
llrs
CC BY-SA 4.0
2022-09-29T17:55:22.583Z
The problem with the name attribute is that it returns multiple names for each card inside that node. GF for example returns `insulin`, `insulin like growth factor 1`, and `epidermal growth factor`. Which one do I use? and how did the original map just label it as `GF` (growth factor)?
Travasaurus
<python><kegg>
Naming conventions for kegg nodes with multiple genes
# Naming conventions for kegg nodes with multiple genes

(Asked by: username_0 on 2022-09-08)

So I'm downloading XML files from Kegg using BioConductor and and I'm running into a problem. If we look at HIF-1 signaling pathway we see the node growth factor (GF) on the left hand side, we can trace it's XML entry to this entry:
    
        
    

While there is no GF on this, there are the three info card links that I can use to extract information. However, when I click on that link, there isn't a place on those info cards that says that these three genes are related to that general title of GF.
Normally this isn't a problem, I would just look at the map, but I'm trying to do something at scale where I can't look at every instance of this.
So my question is, how do I find the labels that Kegg uses in its map using the XML file/python package?

**Tags:** python, kegg
> **Comments:**
> **username_1**: Python's `Bio.KEGG.Gene` has an attribute called `name` described as "A list of the gene names". Might help? Otherwise "orthology" is its own universe. Last ditch attempt try `beautifulsoup` and webscraping. In theory webscraping will work because if you can access the links via clicking them `beautifulsoup` will do this too.  
> **username_0**: Thanks, I'll check out the `name` attribute! I'm trying to avoid scrapping at all costs cause this particular use case won't be pretty, but if it's all there is then...  
> **username_2**: How do you download the files from KEGG with Bioconductor? It might be easier to use Bioconductor to retrieve the gene names  
> **username_2**: If you used KEGGREST you should be able to retrieve the gene names of each pathway: https://bioconductor.org/packages/release/bioc/vignettes/KEGGREST/inst/doc/KEGGREST-vignette.html  
> **username_0**: The problem with the name attribute is that it returns multiple names for each card inside that node. GF for example returns `insulin`, `insulin like growth factor 1`, and `epidermal growth factor`. Which one do I use? and how did the original map just label it as `GF` (growth factor)?  

---

## 0 answers

