<div dir="ltr"><div>On Wed, Sep 17, 2014 at 11:30 AM, David Collier-Brown <span dir="ltr"><<a href="mailto:davec-b@rogers.com" target="_blank">davec-b@rogers.com</a>></span> wrote:<br></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
  

    
  
  <div text="#000000" bgcolor="#FFFFFF">
    Courtesy of Nat Torkington at O'Reilly<br>
    <div><br>
      <ol>
        <li><a href="https://github.com/EricChiang/pup" target="_blank">pup</a> —
          commandline tool for parsing and processing HTML.</li>
      </ol>
      <a href="https://github.com/EricChiang/pup" target="_blank">https://github.com/EricChiang/pup</a><br>
      <div><br></div></div></div></blockquote><div> </div></div>An alternate method of doing similar selector-based tricks from a shell, using node.js & the cheerio module:<div><br></div><div><a href="http://strongloop.com/strongblog/node-js-v0-12-shell-programming-synchronous-child-process/" target="_blank">http://strongloop.com/strongblog/node-js-v0-12-shell-programming-synchronous-child-process/</a></div><div><br></div><div>Note: this currently requires node.js unstable; the next stable release is due out soon though. =)</div><div><br></div><div>Also, syntax highlighting in the output would likely need to be added, perhaps using the ansi module (or similar): <a href="https://github.com/TooTallNate/ansi.js" target="_blank">https://github.com/TooTallNate/ansi.js</a></div><div><br></div>-- <br>  Scott Elcomb         @psema4<br>  <a href="http://psema4.com/pubkey.txt" target="_blank">http://psema4.com/pubkey.txt</a><br>     <a href="http://www.pirateparty.ca/" target="_blank">http://www.pirateparty.ca/</a>
</div></div>