title: How can I extract the names of all package authors from CRAN
body: <p>To celebrate the 100,000th question in the <a href="/questions/tagged/r" class="post-tag" title="show questions tagged &#39;r&#39;" rel="tag">r</a> tag, I'd like to create a list of the names of all package authors on CRAN.</p>
  
  <p>Initially, I thought I could do this using <code>available.packages()</code> but sadly this doesn't contain a column of the authors.</p>
  
  <pre><code>pdb &lt;- available.packages()
  colnames(pdb)
  
   [1] "Package"               "Version"               "Priority"             
   [4] "Depends"               "Imports"               "LinkingTo"            
   [7] "Suggests"              "Enhances"              "License"              
  [10] "License_is_FOSS"       "License_restricts_use" "OS_type"              
  [13] "Archs"                 "MD5sum"                "NeedsCompilation"     
  [16] "File"                  "Repository"   
  </code></pre>
  
  <p>This information is available in the <code>DESCRIPTION</code> file for each package. So I can think of two brute force ways, neither of which are very elegant:</p>
  
  <ol>
  <li><p>Download each of the <a href="https://cran.r-project.org/web/packages/" rel="nofollow noreferrer">6,878</a> packages and read the <code>DESCRIPTION</code> file using <code>base::read.dcf()</code></p></li>
  <li><p>Scrape each of the package pages on CRAN. For example, <a href="https://cran.r-project.org/web/packages/MASS/index.html" rel="nofollow noreferrer">https://cran.r-project.org/web/packages/MASS/index.html</a> tells me that Brian Ripley is the author of MASS.</p></li>
  </ol>
  
  <p>I don't want to download all of CRAN to answer this question. And I don't want to scrape the HTML either, since the information in the DESCRIPTION file is a neatly formatted list of <code>person</code> objects (see <code>?person</code>).</p>
  
  <p><strong>How can I use the information on CRAN to easily build a list of package authors?</strong></p>