WebVoyáge with a Wrapper Michael Doran, Systems Librarian Kentucky Voyager Users’ Group Meeting Thomas More College - June 1, 2007.

Slides:



Advertisements
Similar presentations
The New Books List The New Books List Version 7.0 for Tomcat WebVoyáge Michael Doran, Systems Librarian Northwest EndUsers Group November 13, 2008 Highline.
Advertisements

New Books List for your OPAC: Shareware thats worth every penny! Debbie Morrow Automation Librarian Grand Valley State University GLUGM 2002, Fri. October.
OCLC Online Computer Library Center Connexion Client 1.30 for Multiscripts Cataloging CJK User Group Meeting, Chicago April 2, 2005 David Whitehair and.
Endnote Tutorial The Version pictured is version 9.0 May 8, 2007.
Hypertext markup language.  Client asks for an html file  Server returns the html file  Client parses and displays it  This display is what most people.
Information & Library Services Australian Education Index, British Education Index and ERIC Sally Giffen August 2006.
Cataloging: Millennium Silver and Beyond Claudia Conrad Product Manager, Cataloging ALA Annual 2004.
April 2001Division of Library Services IDEAL® is a collection of full text journal titles. Includes 173 journal titles from Academic Press. Abstracts and.
River Campus Libraries Creating Usable User Interfaces (with Voyager, Encompass, and SFX) David Lindahl Director of Digital Library Initiatives
Millennium Cataloging in Release 2005 Georgia Fujikawa Manager, Training Programs.
River Campus Libraries Creating Usable User Interfaces With Voyager®, ENCompass™ and Open URL Resolvers David Lindahl Director of Digital Library Initiatives.
River Campus Libraries Creating Usable User Interfaces (with Voyager, Encompass, and SFX) David Lindahl, Digital Initiatives Manager
River Campus Libraries Creating Usable User Interfaces (with Voyager, Encompass, and SFX) David Lindahl Director of Digital Library Initiatives
Catalog: Batch delete old Patron Records How to conduct global/batch updates to records – patron Adding Faculty and Patron/Student Records Manually Standardizing.
Using ProQuest Databases Jackson Community College Atkinson Library.
River Campus Libraries Creating an Alternative Video and DVD Catalog Nora Dimmock Media Librarian, Multimedia Center Jeff.
ERIN STALBERG NCSU LIBRARIES SEPTEMBER 16, 2009 Cool Tools – More Connexion.
2440: 141 Web Site Administration Web Server-Side Programming Professor: Enoch E. Damson.
Voyager Developer Meeting March 9-10, 2011 Chicago, IL Voyager Developer Meeting March 9-10, 2011 Chicago, IL Michael Doran, Systems Librarian University.
The New Books List Michael Doran, Systems Librarian Ex Libris Southwest Users Group February 6, 2008 – Santa Ana College.
Crunching Numbers: OPAC Log Analysis of WebVoyage Bennett Claire Ponsford Digital Services Librarian Texas A&M University Libraries EndUser 2007 Session.
Chapter 9 Using Perl for CGI Programming. Computation is required to support sophisticated web applications Computation can be done by the server or the.
Forms and Form Controls Chapter What is a Form?
Headings, Paragraphs, Formatting, Links, Head, CSS, Images
 2003 Prentice Hall, Inc. All rights reserved. CHAPTER 3 JavaScript 1.
Advanced Excel for Finance Professionals A self study material from South Asian Management Technologies Foundation.
ShelfLister ShelfLister Real-time Voyager Shelf Lists via Wireless PDA Michael Doran, Systems Librarian Ex Libris Southwest Users Group February 6, 2008.
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
Creating an LDAP Patron Authentication Adaptor Michael Doran, Systems Librarian University of Texas at Arlington Endeavor Users Group Meeting, Chicago,
Overview of Voyager External Patron Authentication Michael Doran, Systems Librarian Ex Libris Southwest Users Group February 6, 2008 – Santa Ana College.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
USING PERL FOR CGI PROGRAMMING
Thanks to Bill Arms, Marti Hearst Documents. Last time Size of information –Continues to grow IR an old field, goes back to the ‘40s IR iterative process.
NCSU Libraries Kristin Antelman NCSU Libraries June 24, 2006.
© 2007 CBHL The CBHL Distributed Library The Council on Botanical and Horticultural Libraries A Guide to Content and Search Features.
Writing macros and programs for Voyager cataloging Kathryn Lybarger ELUNA 2013 May 3, #ELUNA2013.
 2003 Prentice Hall, Inc. All rights reserved. CHAPTER 3 JavaScript 1.
Getting Started with CAA’s Alumni Groups Website System.
Chapter 9: Perl and CGI Programming CGI Programming Acknowledgement: Some materials are taken from Teach Yourself CGI Programming with PERL 5 in a Week.
The Internet 8th Edition Tutorial 4 Searching the Web.
1 © Netskills Quality Internet Training, University of Newcastle HTML Forms © Netskills, Quality Internet Training, University of Newcastle Netskills is.
ITCS373: Internet Technology Lecture 5: More HTML.
Copyright © 2010 Certification Partners, LLC -- All Rights Reserved Perl Specialist.
HTML Basics BCIS 3680 Enterprise Programming. Web Client/Server Architecture 2  Your browser (the client) requests a Web page from a remote computer.
CSC 2720 Building Web Applications Server-side Scripting with PHP.
WebVoyáge Redesign UT Arlington Library WebVoyáge Advisory Committee Joshua Been Michael Doran Brad Gulliford Helen Hough Heather Scalf Peter Zhang.
Searching Voyager: #2: Finding a Book by Its Title Zale Library at Paul Quinn College David Hamrick, 2012 “Now, voyager, sail thou forth to seek and find…”
Extreme Makeover: Extreme Makeover: Tomcat WebVoyáge Edition Michael Doran, Systems Librarian Ex Libris Southcentral Users Group Wichita Falls, Texas October.
Three Voyager Clients Michael Doran, Systems Librarian Developer Meets Developer Meeting March 25, 2009 Ex Libris Headquarters Des Plaines, Illinois.
Copyright © 2003 ProsoftTraining. All rights reserved. Perl Fundamentals.
Information Retrieval
1 CSC160 Chapter 7: Events and Event Handlers. 2 Outline Event and event handlers onClick event handler onMouseOver event handler onMouseOut event handler.
IN THE NAME OF GOD. Reference Citing Software.
 2001 Prentice Hall, Inc. All rights reserved. Chapter 7 - Introduction to Common Gateway Interface (CGI) Outline 7.1Introduction 7.2A Simple HTTP Transaction.
Page 1. LexisNexis Confidential LexisNexis NZ Upgrade July 2006 Preview 1. Introduction 2. Upgraded Source Directory 3. PDF Delivery of Documents.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
WISER Social Sciences: Finding books and journals Judy Reading.
WebVoyáge with a Wrapper Michael Doran, Systems Librarian Ex Libris Users of North America (ELUNA) Meeting Long Beach, CA - Session 48.2.
DbWiz Federated Search Tool Demo to Staff Carol MacDonald April 4, 2007.
Academic Computing Services 2007 Microsoft Word 2010 Publishing Long Documents This Guide will teach you how to work with long documents such as dissertations.
Lesson 11. CGI CGI is the interface between a Web page or browser and a Web server that is running a certain program/script. The CGI (Common Gateway Interface)
Chapter 7 - Introduction to Common Gateway Interface (CGI)
Please log on a computer Open the web and then Open four tabs…
ONLINE PUBLIC ACCESS CATALOG
Librarian: Ms. Bacon Library Assistant: Ms. Kruper
Please log on a computer Open the web and then Open four tabs…
Librarian: Ms. Bacon Library Assistant: Ms. Kruper
Searching EIT, Author Gay Robertson, 2017.
Designing a Search Strategy
This presentation document has been prepared by Vault Intelligence Limited (“Vault") and is intended for off line demonstration, presentation and educational.
Presentation transcript:

WebVoyáge with a Wrapper Michael Doran, Systems Librarian Kentucky Voyager Users’ Group Meeting Thomas More College - June 1, 2007

Michael Doran, Systems Librarian Once upon a time… “If you will just configure me right, I will turn into a handsome OPAC.” “Hi, my name is Lloyd”

Michael Doran, Systems Librarian What is a handsome OPAC? Aesthetically handsome Functionally handsome An OPAC is “handsome” if it  is simple to use  is intuitive to use  makes it easy to find stuff “Only librarians like to search, everybody else likes to find.” – Roy Tennant

Michael Doran, Systems Librarian Simple searches

Michael Doran, Systems Librarian WebVoyáge simple search

Michael Doran, Systems Librarian WebVoyáge simple search?

Michael Doran, Systems Librarian It was soooo simple…

Michael Doran, Systems Librarian WebVoyáge simple search (after)

Michael Doran, Systems Librarian Code WebVoyáge Yada, yada, yada... More yada, yada, yada...

Michael Doran, Systems Librarian WebVoyáge server-side back end Voyager OPAC opacsvr Pwebrecon.cgi opac.ini Oracle httpd webrecon.exe keysvr indexes header webvoyage.cgi

Michael Doran, Systems Librarian WebVoyáge is a “black box” Voyager OPAC opacsvr Pwebrecon.cgi opac.ini Oracle httpd webrecon.exe keysvr indexes header webvoyage.cgi “Black Box”

Michael Doran, Systems Librarian They call it a wrapper Voyager OPAC opacsvr Pwebrecon.cgi opac.ini Oracle httpd webrecon.exe keysvr indexes header webvoyage.cgi “Black Box” “wrapper script”

Michael Doran, Systems Librarian They call it a wrapper Voyager OPAC opacsvr Pwebrecon.cgi opac.ini Oracle httpd webrecon.exe keysvr indexes header webvoyage.cgi “Black Box” Pwebrecon-orig.cgi “wrapper script”Pwebrecon.cgi

Michael Doran, Systems Librarian Basic wrapper script #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; print $data_stream; exit; opacsvr Pwebrecon.cgi Oracle httpd webrecon.exe keysvr webvoyage.cgi “Black Box” Pwebrecon-orig.cgi “wrapper script”Pwebrecon.cgi WebVoyáge Yada, yada, yada... More yada, yada, yada...

Michael Doran, Systems Librarian Do your thing to that datastream aka “screen scraping” “A technique in which a computer program extracts data from the display output of another program. The key element that distinguishes screen scraping from regular parsing is that the output being scraped was intended for final display to a human user, rather than as input to another program, and is therefore usually neither documented nor structured for convenient parsing.” [from Wikipedia] text wrangling  add text  delete text  rearrange text

Michael Doran, Systems Librarian Example – adding text Voyager’s “header.htm” file  is inserted after the tag  okay for display tags, but not for others Wrapper script can insert elements within the tag  metadata  JavaScript  CSS

Michael Doran, Systems Librarian Example – adding text #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; $meta_code = qw( ); $data_stream =~ s# #$meta_code #i; print $data_stream; exit; Library Catalog - University of Texas at Arlington <BODY onLoad="document.querybox.Search_Arg.focus()“… Library Catalog - University of Texas at Arlington <BODY onLoad="document.querybox.Search_Arg.focus()“…

Michael Doran, Systems Librarian Example – removing text #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; $data_stream =~ s#.*? University of Texas at Arlington Library ##i; print $data_stream; exit;

Michael Doran, Systems Librarian Example – rearranging text #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; $data_stream =~ s#Search request: (.*).*Results: (.*) entries.# $2 entries for $1 #s; print $data_stream; exit;

Michael Doran, Systems Librarian Show and go keyword anywhere search words within quotes are treated as a phrase other words are automatically Boolean ANDed* relevancy ranked results* Hmmm… that’s -like in functionality

Michael Doran, Systems Librarian No secret handshakes last name, first name for author searches no initial articles for title searches Library of Congress subject headings Boolean operators what an index browse is

Michael Doran, Systems Librarian Wrapper script redux #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; print $data_stream; exit; opacsvr Pwebrecon.cgi Oracle httpd webrecon.exe keysvr webvoyage.cgi “Black Box” Pwebrecon-orig.cgi “wrapper script”Pwebrecon.cgi Read and parse form input  QUERY_STRING (get method)  STDIN (post method)

Michael Doran, Systems Librarian Truncation adaptation samuel clem*

Michael Doran, Systems Librarian Incoming data #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; print $data_stream; exit; QUERY STRING Search_Arg=samuel+clem*&Search_Code=GKEY%5E*& PID=D3hcrVVigATy0bZXCTmXMK61orl& SEQ= &CNT=50&HIST=1

Michael Doran, Systems Librarian #!/usr/bin/perl ReadParse(); $data_stream = GetOrigDataStream(); sub GetOrigDataStream { $data_stream = `./Pwebrecon-orig.cgi`; return $data_stream; } print $data_stream; exit; Incoming data

Michael Doran, Systems Librarian #!/usr/bin/perl ReadParse(); $data_stream = GetOrigDataStream(); sub GetOrigDataStream { $search_arg = $formdata{'Search_Arg'}; $search_arg =~ s/\*/?/g; if ($ENV{'QUERY_STRING'}) { $ENV{'QUERY_STRING'} =~ s/Arg=.*?&Search/Arg=$search_arg&Search/; } $data_stream = `./Pwebrecon-orig.cgi`; return $data_stream; } print $data_stream; exit; Example – truncation adaptation

Michael Doran, Systems Librarian Example – truncation adaptation

Michael Doran, Systems Librarian Other input data munging fix Voyager 6.x GKEY/TKEY/SKEY keyword “multiple spaces" no hits bug (Support Web incident #131344) $search_arg =~ s/ / /g; deal with “right single quotation mark” vs. “apostrophe” in search input issue allow for ISBNs with dashes* * (combined output/input) data munging

Michael Doran, Systems Librarian Is a wrapper right for you? requires some programming expertise requires lots (and lots) of testing  test platform ideally a Voyager test server separate WebVoyáge instance (a la preview server)  law of unintended consequences extra layer makes WebVoyáge more brittle  more dependencies, e.g. with opac.ini upgrades more complicated

Michael Doran, Systems Librarian Getting started wrappers are language-neutral, however… Perl is good  designed for text processing  robust regular expressions  is already on your system  example wrappers available it’s fine to think big… … but start small

Michael Doran, Systems Librarian Resources Michael Doran, University of Texas at Arlington Presentation: “WebVoyáge with a Wrapper” Source code : Ere Maijala, National Library of Finland EEndUser 2006 presentation*: “Enhancement scripts for WebVoyáge OPAC”Enhancement scripts for WebVoyáge OPAC * password required – see European EndUser on SupportWeb Source code: resources/pwebrecon2.htm resources/pwebrecon2.htm

Michael Doran, Systems Librarian A small start copy original Pwebrecon.cgi cp –p Pwebrecon.cgi Pwebrecon-orig.cgi create Pwebrecon.cgi wrapper template add desired feature test #!/usr/bin/perl $data_stream = `./Pwebrecon-orig.cgi`; print $data_stream; exit;

Michael Doran, Systems Librarian Q & A