<p>You could use the pubmed API to query it directly.  Typically I use <a href="https://biopython.org/" rel="nofollow noreferrer">Biopython</a> for my <a href="http://biopython.org/DIST/docs/api/Bio.Entrez-module.html" rel="nofollow noreferrer">pubmed queries</a>.  There are some good examples in the <a href="http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc129" rel="nofollow noreferrer">cookbook</a> and on other <a href="https://stackoverflow.com/questions/21665932/is-there-a-way-with-biopython-to-obtain-the-full-abstract-from-a-pubmed-article">SO posts</a>.</p>

<p>This example from the <a href="https://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc129" rel="nofollow noreferrer">cookbook link</a> above has the guts of what you need.  You will just have to iterate over your list.  Depending on the number of queries you want to do you might have issues getting throttled by NCBI</p>

<pre><code>In this example, we will query PubMed for all articles having to do with orchids (see section 2.3 for our motivation). We first check how many of such articles there are:

&gt;&gt;&gt; from Bio import Entrez
&gt;&gt;&gt; Entrez.email = "A.N.Other@example.com"     # Always tell NCBI who you are
&gt;&gt;&gt; handle = Entrez.egquery(term="orchid")
&gt;&gt;&gt; record = Entrez.read(handle)
&gt;&gt;&gt; for row in record["eGQueryResult"]: ...     
        if row["DbName"]=="pubmed": ...         
            print(row["Count"]) 463 

Now we use the Bio.Entrez.efetch function to download the PubMed IDs of these 463 articles:

&gt;&gt;&gt; from Bio import Entrez
&gt;&gt;&gt; handle = Entrez.esearch(db="pubmed", term="orchid", retmax=463)
&gt;&gt;&gt; record = Entrez.read(handle)
&gt;&gt;&gt; handle.close()
&gt;&gt;&gt; idlist = record["IdList"] 

This returns a Python list containing all of the PubMed IDs of articles related to orchids
</code></pre>

CC BY-SA 4.0
2018-05-24T21:33:14.890Z
A follow-up question: What will be the value of the db parameter if I want to search all databases? I read through Biopython's Entrez.esearch documentation as well as source code but wasn't able to figure it out.
Musfiqur Rahman
CC BY-SA 4.0
2018-05-24T15:23:38.680Z
2018-05-24T23:33:33.963Z
2018-05-24T23:33:33.963Z
Bioathlete
<p>I have recently tried a few tools (<a href="http://mutationfinder.sourceforge.net/" rel="nofollow noreferrer">MutationFinder</a>, <a href="https://www.ncbi.nlm.nih.gov/CBBresearch/Lu/Demo/tmTools/demo/tmVar/" rel="nofollow noreferrer">tmVar</a>, <a href="https://www.ncbi.nlm.nih.gov/CBBresearch/Lu/Demo/PubTator/" rel="nofollow noreferrer">PubTator</a> etc.) that extract mutations from a given text. However, for my work I need something that will take a list of mutations as an input and return a list of pubmed id in which the mutations has been found.</p>

<p>Example input:
mut_list = [Y702F, L483Y]</p>

<p>Example output:
pub_list = [12215417, 18537569]</p>

<p>Can anyone give any idea?</p>

<p>Thanks!</p>

CC BY-SA 4.0
2018-05-24T15:25:01.460Z
Welcome to the site. Could you elaborate more your question? What did you try to solve this problem?
llrs
<mutations>
How can I get a list of papers where a particular mutation has been mentioned?
# How can I get a list of papers where a particular mutation has been mentioned?

(Asked by: username_0 on 2018-05-24)

I have recently tried a few tools ([MutationFinder](http://mutationfinder.sourceforge.net/), [tmVar](https://www.ncbi.nlm.nih.gov/CBBresearch/Lu/Demo/tmTools/demo/tmVar/), [PubTator](https://www.ncbi.nlm.nih.gov/CBBresearch/Lu/Demo/PubTator/) etc.) that extract mutations from a given text. However, for my work I need something that will take a list of mutations as an input and return a list of pubmed id in which the mutations has been found.

Example input:
mut\_list = [Y702F, L483Y]

Example output:
pub\_list = [12215417, 18537569]

Can anyone give any idea?

Thanks!

**Tags:** mutations
> **Comments:**
> **username_1**: Welcome to the site. Could you elaborate more your question? What did you try to solve this problem?  

---

## 1 answers

### Answer by username_2 on 2018-05-24. Score: 5 | Accepted answer

You could use the pubmed API to query it directly.  Typically I use Biopython for my pubmed queries.  There are some good examples in the cookbook and on other SO posts.
This example from the cookbook link above has the guts of what you need.  You will just have to iterate over your list.  Depending on the number of queries you want to do you might have issues getting throttled by NCBI
In this example, we will query PubMed for all articles having to do with orchids (see section 2.3 for our motivation). We first check how many of such articles there are:

>>> from Bio import Entrez
>>> Entrez.email = "A.N.Other@example.com"     # Always tell NCBI who you are
>>> handle = Entrez.egquery(term="orchid")
>>> record = Entrez.read(handle)
>>> for row in record["eGQueryResult"]: ...     
        if row["DbName"]=="pubmed": ...         
            print(row["Count"]) 463 

Now we use the Bio.Entrez.efetch function to download the PubMed IDs of these 463 articles:

>>> from Bio import Entrez
>>> handle = Entrez.esearch(db="pubmed", term="orchid", retmax=463)
>>> record = Entrez.read(handle)
>>> handle.close()
>>> idlist = record["IdList"] 

This returns a Python list containing all of the PubMed IDs of articles related to orchids

> **Comments:**
> **username_0**: A follow-up question: What will be the value of the db parameter if I want to search all databases? I read through Biopython's Entrez.esearch documentation as well as source code but wasn't able to figure it out.  

---

