<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The Digital Library of India</title>
	<atom:link href="http://alokshukla.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://alokshukla.wordpress.com</link>
	<description></description>
	<lastBuildDate>Sat, 31 Dec 2011 14:08:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='alokshukla.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/9f8ef8bc166d5ada906eb91838e8b36a?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>The Digital Library of India</title>
		<link>http://alokshukla.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://alokshukla.wordpress.com/osd.xml" title="The Digital Library of India" />
	<atom:link rel='hub' href='http://alokshukla.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Where Knowledge is Free &#8211; Digital Library of India</title>
		<link>http://alokshukla.wordpress.com/2009/12/11/where-knoledge-is-free-digital-library-of-india/</link>
		<comments>http://alokshukla.wordpress.com/2009/12/11/where-knoledge-is-free-digital-library-of-india/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 07:57:29 +0000</pubDate>
		<dc:creator>Alok Bhushan Shukla</dc:creator>
				<category><![CDATA[Digital Library of India]]></category>
		<category><![CDATA[@ ABS DLI Downloader]]></category>
		<category><![CDATA[Book Downloader]]></category>

		<guid isPermaLink="false">http://alokshukla.wordpress.com/?p=3</guid>
		<description><![CDATA[Digital Library of India - Where Knowledge is free!
@ABS DLI Downloader - Download any book in PDF format from Digital Library of India.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alokshukla.wordpress.com&amp;blog=10454483&amp;post=3&amp;subd=alokshukla&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>*************************************************************************************</p>
<p>Date : September  02, 2011</p>
<p>The new version of DLI Downloader Software <strong> <a href="http://www.4shared.com/file/M9-kKW59/ABS_DLI_Downloader_V21.html" target="_blank">@ABS DLI Downloader V2.1 </a> </strong>is out.</p>
<p>You can download it from <a href="http://www.4shared.com/file/M9-kKW59/ABS_DLI_Downloader_V21.html" target="_blank">here</a> .</p>
<p>This is  a quick update to attend the bug (some book not getting downloaded) caused by recent changes in DLI. Comments and feedback for improvement are always welcome.</p>
<p style="text-align:justify;">
<p style="text-align:justify;">*************************************************************************************</p>
<p style="text-align:justify;">Date : January 02, 2011</p>
<p style="text-align:justify;">Friends! The new version of DLI Downloader Software <strong> <a href="http://www.4shared.com/file/1GU2RUoK/ABS_DLI_Downloader_V2.html" target="_blank">@ABS DLI Downloader V2 </a> </strong>is out.</p>
<p style="text-align:justify;">You can download it from <a href="http://www.4shared.com/file/1GU2RUoK/ABS_DLI_Downloader_V2.html" target="_blank">here</a> .</p>
<p style="text-align:justify;">If you have already used the previous version of this software you would find the same interface with the added advantage of access to more books from different servers of DLI.</p>
<p style="text-align:justify;">If you are visiting for first time and want to know what the heck is this <strong>@ABS DLI Downloader </strong>and <strong>Digital Library of India </strong>then read on.<strong><br />
</strong></p>
<p style="text-align:justify;">*************************************************************************************</p>
<p style="text-align:justify;">Date : December 11, 2009</p>
<p style="text-align:justify;">Recently I stumbled upon our own <strong>Digital Library of India (DLI)<a href="http://www.new.dli.ernet.in/"> http://www.new.dli.ernet.in/</a> .</strong><br />
<strong> </strong><br />
DLI  is <strong>Hosted by: <a href="http://www.iisc.ernet.in/" target="_blank">Indian Institute of Science, Bangalore</a> </strong>in co-operation with<a href="http://www.cmu.edu/" target="_blank"> CMU</a>, <a href="http://www.iiit.net/" target="_blank">IIIT</a>, <a href="http://www.nsf.gov/" target="_blank">NSF</a>, <a href="http://www.eis.ernet.in/" target="_blank">ERNET</a> and <a href="http://www.mcit.gov.eg/" target="_blank">MCIT</a> for the<strong> Govt. of India</strong> and 21 participating centers.</p>
<p style="text-align:justify;">It contains a huge collection of scanned books.</p>
<p style="text-align:justify;">It’s just amazing!</p>
<p style="text-align:justify;">The guys out there must have put tremendous efforts to bring the wealth of the knowledge to digital world.</p>
<p style="text-align:justify;">The only blemish in this otherwise excellent work is their presentation.<br />
See for yourself. Their plugin makes reading books online a difficult proposition.Further there is this temptation to download books and read at leisure.</p>
<p style="text-align:justify;">So I did a simple Google search for some downloader software which resulted in a few scripts strewn here and there…nothing solid.</p>
<p style="text-align:justify;">It was then that I decided to do it myself.(With the help of  iText PDF library and Of course Google is always there!)<br />
This resulted in  – <strong>@ABS</strong> <strong>DLI Downloader</strong></p>
<p style="text-align:justify;"><strong>Download Here : </strong><a href="http://www.4shared.com/file/172956037/2109eb67/_2__ABS_DLI_Downloader.html">http://www.4shared.com/file/172956037/2109eb67/_2__ABS_DLI_Downloader.html</a></p>
<p style="text-align:justify;">Once you provide the barcode of the book to <strong>@ABS DLI Downloader </strong> it brings the book to your computer and saves it in  C:\DLI as barcode.PDF.</p>
<p style="text-align:justify;">You need JAVA run time installed on your computer to run @ABS DLI Downloader.</p>
<p style="text-align:justify;">If not already installed you can download it from &#8211; <a href="http://java.com/en/download/manual.jsp">http://java.com/en/download/manual.jsp<br />
</a><br />
In case you are connecting to internet through a Proxy Server then use the following to rum from windows command shell after suitably replacing proxy host and proxy port for your network.</p>
<p style="text-align:justify;">java -jar -Dhttp.proxySet=true -Dhttp.proxyHost=172.111.14.14 -Dhttp.proxyPort=3129 @ABSDL~1.jar</p>
<p style="text-align:justify;">So I hope you can download your favorite book . Happy Reading!</p>
<p style="text-align:justify;">*************************************************************</p>
<p style="text-align:justify;"><strong><span style="text-decoration:underline;">Logic of Barcode</span></strong></p>
<p style="text-align:justify;">Digital Library of India stores books in Tiff format.</p>
<p style="text-align:justify;">The URL for the first page of the book is something like <a href="http://www.new.dli.ernet.in/data/upload/0044/297/PTIFF/00000001.tif">http://www.new.dli.ernet.in/data/upload/0044/297/PTIFF/00000001.tif</a></p>
<p style="text-align:justify;">Note that page number is stored in the format – 00000001.tif  so the fifth page would be 00000005.tif. and the URL would be <a href="http://www.new.dli.ernet.in/data/upload/0044/297/PTIFF/00000001.tif">http://www.new.dli.ernet.in/data/upload/0044/297/PTIFF/00000005.tif.</a></p>
<p style="text-align:justify;">Therefore if one could get the first page of URL of the book it is easy to download the rest of the book.</p>
<p style="text-align:justify;">One way would be to  simply query <a href="http://www.new.dli.ernet.in/cgi-bin/DBscripts/allmetainfo.cgi?barcode">http://www.new.dli.ernet.in/cgi-bin/DBscripts/allmetainfo.cgi?barcode</a>= mybarcode</p>
<p style="text-align:justify;">And extract the URL of first page of the book from the response.</p>
<p style="text-align:justify;">However, I found some interesting pattern while playing with DLI. Only last seven digits of barcode are used in forming URL of first page. Do you notice the 0044/297 part in example above? This is created by using the barcode of the book which in this case is 599001<strong>0044</strong>292. Notice that 0044 is same as in barcode. And 297 = 292 + 5!</p>
<p style="text-align:justify;">Here is the complete logic of converting barcode to URL.</p>
<p style="text-align:justify;">String BarCodeToUrl(String barCode) {</p>
<p style="text-align:justify;">String myURL=null;</p>
<p style="text-align:justify;">// An Example of URL representation in this program</p>
<p style="text-align:justify;">//  http://www.new.dli.ernet.in/data_copy/upload/0081/748/PTIFF/00000001.tif</p>
<p style="text-align:justify;">//  ******urlpart1*************|urlpart2*|*****</p>
<p style="text-align:justify;">String urlpart1 = &#8220;http://www.new.dli.ernet.in/&#8221;;</p>
<p style="text-align:justify;">String urlpart2 = null; // data_copy</p>
<p style="text-align:justify;">String urlpart3 = &#8220;/upload/&#8221;;</p>
<p style="text-align:justify;">String urlpart4 = null;  // 0081</p>
<p style="text-align:justify;">String urlpart5 = &#8220;/&#8221;;</p>
<p style="text-align:justify;">String urlpart6 = null;  //748</p>
<p style="text-align:justify;">String urlpart7 = &#8220;/PTIFF/&#8221;;</p>
<p style="text-align:justify;">String urlpart8 = &#8220;00000001.tif&#8221;;</p>
<p style="text-align:justify;">int len = barCode.length();</p>
<p style="text-align:justify;">String barcodepart1 = barCode.substring(len &#8211; 7, len &#8211; 3); // The 4 digits before barcodepart2</p>
<p style="text-align:justify;">String barcodepart2 = barCode.substring(len &#8211; 3); // Last 3 digits of barcode</p>
<p style="text-align:justify;">urlpart4 = barcodepart1;</p>
<p style="text-align:justify;">int bar1;</p>
<p style="text-align:justify;">int bar2;</p>
<p style="text-align:justify;">try {</p>
<p style="text-align:justify;">bar1 = Integer.parseInt(barcodepart1);                    // Convert string to integer</p>
<p style="text-align:justify;">bar2 = Integer.parseInt(barcodepart2);                    // convert string to integer</p>
<p style="text-align:justify;">} catch (java.lang.NumberFormatException e) {</p>
<p style="text-align:justify;">return null;</p>
<p style="text-align:justify;">} // invalid bar1</p>
<p style="text-align:justify;">// This is the logic of coverting barcode to URL</p>
<p style="text-align:justify;">if (bar1 &lt;= 51) {</p>
<p style="text-align:justify;">urlpart2 = &#8220;data&#8221;;</p>
<p style="text-align:justify;">} else if (52 &lt;= bar1 &amp;&amp; bar1 &lt;= 85) {</p>
<p style="text-align:justify;">urlpart2 = &#8220;data_copy&#8221;;</p>
<p style="text-align:justify;">} else if (86 &lt;= bar1 &amp;&amp; bar1 &lt;= 123) {</p>
<p style="text-align:justify;">urlpart2 = &#8220;rawdataupload&#8221;;</p>
<p style="text-align:justify;">} else if (124 &lt;= bar1 &amp;&amp; bar1 &lt;= 132) {</p>
<p style="text-align:justify;">urlpart2 = &#8220;rawdataupload1&#8243;;</p>
<p style="text-align:justify;">}</p>
<p style="text-align:justify;">//System.out.println(&#8220;test&#8221;+urlpart2);</p>
<p style="text-align:justify;">if (urlpart2 != null) {</p>
<p style="text-align:justify;">if (bar1 &lt;= 85) {</p>
<p style="text-align:justify;">urlpart6 = String.valueOf(bar2 + 5);</p>
<p style="text-align:justify;">} else if (86 &lt;= bar1 &amp;&amp; bar1 &lt;= 100) {</p>
<p style="text-align:justify;">urlpart6 = String.valueOf(bar2);</p>
<p style="text-align:justify;">} else if (101 &lt;= bar1 &amp;&amp; bar1 &lt;= 132) {</p>
<p style="text-align:justify;">urlpart6 = String.valueOf(bar2 + 2);</p>
<p style="text-align:justify;">}</p>
<p style="text-align:justify;">if (urlpart6.length() == 1) {</p>
<p style="text-align:justify;">urlpart6 = &#8220;00&#8243; + urlpart6;</p>
<p style="text-align:justify;">} else if (urlpart6.length() == 2) {</p>
<p style="text-align:justify;">urlpart6 = &#8220;0&#8243; + urlpart6;</p>
<p style="text-align:justify;">}</p>
<p style="text-align:justify;">myURL = urlpart1 + urlpart2 + urlpart3 + urlpart4 + urlpart5 + urlpart6 + urlpart7 + urlpart8;</p>
<p style="text-align:justify;">}</p>
<p style="text-align:justify;">return myURL;</p>
<p style="text-align:justify;">}</p>
<p style="text-align:justify;">}</p>
<p style="text-align:justify;">****************************************************************</p>
<p style="text-align:justify;">One thing you must have noticed that maximum number allowed for  bar1 is 132 therefore if you try to download a book say <a href="http://www.new.dli.ernet.in/cgi-bin/metainfo.cgi?&amp;title1=A%20Pocket-Book%20For%20Mechanical%20Engineering&amp;author1=Low%20David%20Allan&amp;subject1=NULL&amp;year=1949%20&amp;language1=English&amp;pages=778&amp;barcode=99999990163321&amp;author2=NULL&amp;identifier1=Librarian,%20BITS-Pilani&amp;publisher1=Longmans,%20Green%20And%20Co.%20,%20London&amp;contributor1=NULL&amp;vendor1=NONE&amp;scanningcentre1=cdac,noida&amp;slocation1=NONE&amp;sourcelib1=Central%20Library,%20BITS-%20Pilani&amp;scannerno1=0&amp;digitalrepublisher1=Digital%20Library%20Of%20India&amp;digitalpublicationdate1=2006-07-25&amp;numberedpages1=0&amp;unnumberedpages1=0&amp;rights1=Copyright%20permitted&amp;copyrightowner1=NULL&amp;copyrightexpirydate1=0000-00-00&amp;format1=Tagged%20Image%20File%20Format%20&amp;url=/data1/upload/0018/024" target="_self">A Pocket-Book For Mechanical Engineering.</a>, 9999999<strong>0163</strong>321. with bar1 = 163</p>
<p style="text-align:justify;">DLI  does not show this book and hangs without giving any warning.</p>
<p style="text-align:justify;"><strong>@ABS DLI Downloader </strong>would give you the error message – “Digital Libray Error-Try Another Barcode”.</p>
<p style="text-align:justify;"><span style="text-decoration:underline;">Update on 02 Jan 2011</span> DLI has resolved this missing link issue and now with <strong> <a href="http://www.4shared.com/file/1GU2RUoK/ABS_DLI_Downloader_V2.html" target="_blank">@ABS DLI Downloader V2</a> </strong>you can download all such books.<strong><br />
</strong></p>
<p style="text-align:justify;"><strong><br />
</strong></p>
<p style="text-align:justify;">****************************************************************-</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alokshukla.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alokshukla.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/alokshukla.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/alokshukla.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alokshukla.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alokshukla.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alokshukla.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alokshukla.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alokshukla.wordpress.com&amp;blog=10454483&amp;post=3&amp;subd=alokshukla&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://alokshukla.wordpress.com/2009/12/11/where-knoledge-is-free-digital-library-of-india/feed/</wfw:commentRss>
		<slash:comments>35</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e322198373687dda66127922bb99b0e1?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Alok Bhushan Shukla</media:title>
		</media:content>
	</item>
	</channel>
</rss>
