<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=ProjectPrometheus%2FAT_BookSearch</id>
	<title>ProjectPrometheus/AT BookSearch - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=ProjectPrometheus%2FAT_BookSearch"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=ProjectPrometheus/AT_BookSearch&amp;action=history"/>
	<updated>2026-05-15T08:34:35Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=ProjectPrometheus/AT_BookSearch&amp;diff=37740&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:24, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=ProjectPrometheus/AT_BookSearch&amp;diff=37740&amp;oldid=prev"/>
		<updated>2021-02-07T05:24:04Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; &lt;br /&gt;
 # ---- AT_BookSearch.py ---- &lt;br /&gt;
 &lt;br /&gt;
 import unittest&lt;br /&gt;
 import httplib, urllib &lt;br /&gt;
 &lt;br /&gt;
 DEFAULT_HEADER = {&amp;quot;Content-Type&amp;quot;:&amp;quot;application/x-www-form-urlencoded&amp;quot;, &lt;br /&gt;
     &amp;quot;Referer&amp;quot;:&amp;quot;http://165.194.100.2/cgi-bin/mcu100?LIBRCODE=ATSL&amp;amp;amp;USERID=*&amp;amp;amp;SYSDB=R&amp;quot;, &lt;br /&gt;
     &amp;quot;Accept&amp;quot;:&amp;quot;image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */*&amp;quot;} &lt;br /&gt;
 &lt;br /&gt;
 DEFAULT_SERVICE_IP = &amp;quot;165.194.17.56&amp;quot;&lt;br /&gt;
 DEFAULT_SERVICE_PORT = 8080&lt;br /&gt;
 DEFAULT_SERVICE_SIMPLE_PATH = &amp;quot;/servlet/SimpleSearch&amp;quot;&lt;br /&gt;
 DEFAULT_SERVICE_ADVANCED_PATH = &amp;quot;/servlet/AdvancedSearch&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 def getSimpleSearchResponse(params):&lt;br /&gt;
     params=urllib.urlencode(params) &lt;br /&gt;
     conn = httplib.HTTPConnection(DEFAULT_SERVICE_IP, DEFAULT_SERVICE_PORT) &lt;br /&gt;
     conn.request(&amp;quot;POST&amp;quot;, DEFAULT_SERVICE_SIMPLE_PATH, params, DEFAULT_HEADER) &lt;br /&gt;
     response = conn.getresponse() &lt;br /&gt;
     print response.status, response.reason &lt;br /&gt;
     data = response.read() &lt;br /&gt;
     conn.close() &lt;br /&gt;
     return data&lt;br /&gt;
 &lt;br /&gt;
 def getAdvancedSearchResponse(params):&lt;br /&gt;
     params=urllib.urlencode(params) &lt;br /&gt;
     conn = httplib.HTTPConnection(DEFAULT_SERVICE_IP, DEFAULT_SERVICE_PORT) &lt;br /&gt;
     conn.request(&amp;quot;POST&amp;quot;, DEFAULT_SERVICE_ADVANCED_PATH, params, DEFAULT_HEADER) &lt;br /&gt;
     response = conn.getresponse() &lt;br /&gt;
     print response.status, response.reason &lt;br /&gt;
     data = response.read() &lt;br /&gt;
     conn.close() &lt;br /&gt;
     return data&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class TestAdvancedSearch(unittest.TestCase):&lt;br /&gt;
     def testOne(self):&lt;br /&gt;
         params = {&amp;#039;TI&amp;#039;:&amp;#039;Test&amp;#039;, &amp;#039;AU&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;IB&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;PU&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;OP1&amp;#039;:&amp;#039;&amp;#039;,&amp;#039;OP2&amp;#039;:&amp;#039;&amp;#039;,&amp;#039;OP3&amp;#039;:&amp;#039;&amp;#039;}&lt;br /&gt;
         data = getAdvancedSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;&amp;amp;lt;TR&amp;amp;gt;&amp;quot;) &amp;amp;gt; 70)&lt;br /&gt;
 &lt;br /&gt;
     def testKorean(self):&lt;br /&gt;
         params = {&amp;#039;TI&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;AU&amp;#039;:&amp;#039;김소월&amp;#039;, &amp;#039;IB&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;PU&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;OP1&amp;#039;:&amp;#039;&amp;#039;,&amp;#039;OP2&amp;#039;:&amp;#039;&amp;#039;,&amp;#039;OP3&amp;#039;:&amp;#039;&amp;#039;}&lt;br /&gt;
         data = getAdvancedSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;&amp;amp;lt;TR&amp;amp;gt;&amp;quot;) &amp;amp;gt; 10)&lt;br /&gt;
 &lt;br /&gt;
     def testKoreanTwo(self):&lt;br /&gt;
         params = {&amp;#039;TI&amp;#039;:&amp;#039;한글&amp;#039;, &amp;#039;AU&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;IB&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;PU&amp;#039;:&amp;#039;&amp;#039;, &amp;#039;OP1&amp;#039;:&amp;#039;&amp;#039;,&amp;#039;OP2&amp;#039;:&amp;#039;&amp;#039;,&amp;#039;OP3&amp;#039;:&amp;#039;&amp;#039;}&lt;br /&gt;
         data = getAdvancedSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;&amp;amp;lt;TR&amp;amp;gt;&amp;quot;) &amp;amp;gt; 10)&lt;br /&gt;
 &lt;br /&gt;
 class TestSimpleSearch(unittest.TestCase):&lt;br /&gt;
     def testOne(self):&lt;br /&gt;
         params = {&amp;#039;keyword&amp;#039;:&amp;#039;한글&amp;#039;}&lt;br /&gt;
         data = getSimpleSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;&amp;amp;lt;TR&amp;amp;gt;&amp;quot;) &amp;amp;gt; 10)&lt;br /&gt;
 &lt;br /&gt;
     def testIsbn(self):&lt;br /&gt;
         params = {&amp;#039;keyword&amp;#039;:&amp;#039;897087223X&amp;#039;}&lt;br /&gt;
         data = getSimpleSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;김불꾼&amp;quot;) &amp;amp;gt; 0)&lt;br /&gt;
 &lt;br /&gt;
     def testKoreanAndNumber(self):&lt;br /&gt;
         params = {&amp;#039;keyword&amp;#039;:&amp;#039;한글3&amp;#039;}&lt;br /&gt;
         data = getSimpleSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;&amp;amp;lt;TR&amp;amp;gt;&amp;quot;) &amp;amp;gt; 10)&lt;br /&gt;
 &lt;br /&gt;
     def testKoreanAndNumberWithSpace(self):&lt;br /&gt;
         params = {&amp;#039;keyword&amp;#039;:&amp;#039;한글 3&amp;#039;}&lt;br /&gt;
         data = getSimpleSearchResponse(params)&lt;br /&gt;
         self.assert_(data.count(&amp;quot;&amp;amp;lt;TR&amp;amp;gt;&amp;quot;) &amp;amp;gt; 10)&lt;br /&gt;
 &lt;br /&gt;
 if __name__==&amp;quot;__main__&amp;quot;:&lt;br /&gt;
     unittest.main(argv=(&amp;#039;&amp;#039;,&amp;#039;-v&amp;#039;))&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>