The Readerware Newsletter
Welcome to the Readerware Newsletter.
Readerware 2.50 is now shipping. This is a major upgrade with enhancements
to Readerware auto-catalog and new features like auto-update and search
and replace. Plus all Readerware products now support Half.com.
Also in this issue, custom
extraction examples to automatically assign user numbers to your
database and revalue your database using a percentage of any
web price. New download servers and web site news.
Readerware 2.50 Now Shipping
Release 2.50 is now available for all products (Readerware,
ReaderwareAW and ReaderwareVW), and all platforms, (Windows,
Mac OS X and Linux). A full list of the changes included in
2.50 is available online:
This is a major upgrade with the focus on building and maintaining
your Readerware databases. Readerware auto-catalog can now merge data
from multiple web sites to extract the maximum amount of information.
Readerware auto-update is a new feature that lets you update existing
databases by searching the web. Look for more images, pull in
additional information like dewey numbers from the Library of Congress,
revalue your collection by getting the latest prices from the web.
New search and replace functionality allows you to update a database
column in all or selected database rows. For example move books from
one category to another, assign locations etc.
All Readerware products now support Half.com, build and update your
database from the massive Half.com web site. Works with auto-catalog,
auto-update and the drag and drop interface. Even the shopping cart
will now find prices at Half.com.
Readerware 2.50 is a major upgrade.
New Download Sites
When you download the latest version of Readerware, you will notice that
there are now two download sites available. Next to most downloads you will see
a primary site link and a secondary site link.
The primary links are on a new high capacity server which should provide
faster and more reliable downloads. The secondary link is the old server
at readerware.com. Right now this new server is being evaluated so not
all downloads have been moved over. But if it works out all products
will be available on both servers.
So check out the new server as you download Readerware 2.50 and be sure
to let me know if you encounter any problems.
E-Mail support@readerware.com.
Readerware Auto-Catalog Enhancements
Readerware auto-catalog is now able to merge data from different web sites.
Instead of just adding the
first match to the database, Readerware can now continue to search other
sites and fill in additional information. Turning on this feature is as
simple as checking the Merge data from all selected sites
option in the auto-catalog wizard.
Readerware gets as much information as possible from each site before moving
on to the next site looking for still more information. This means that
the order you search sites can be important.
For example, suppose you like the Amazon listing but would also like
to include the dewey number in your Readerware database. In this case
you would search Amazon first and then the Library of Congress.
But supposing you prefer the Library of Congress listing but would also
like to get images from Amazon. You simply search the sites in the
reverse order, The Library of Congress first.
Other auto-catalog enhancements include the ability to delete an item
from an auto-catalog list and to save lists.
Readerware Auto-Update
New in version 2.0 is Readerware auto-update. This powerful feature lets
you search the web and update your existing databases.
The Readerware auto-update wizard will step you through the process. It
is very similar to auto-catalog. You start by selecting the sites you want
to search.
Next you pick the rows you want to update. You have several choices here.
You can update your entire database or you can update the current
search results. So you can first search your database to establish the
rows you want to update. As a further refinement, you can update
only the selected search results. Finally you can input a list of
ISBNs or UPCs to update. So there are a number of ways to control which rows are
processed by Readerware auto-update.
When searching for new images, it is best to first perform an image search
and search for those
items without images. Then in the auto-update wizard, select the
current search results option. This means that Readerware will only look up
items without images. If you selected the entire database, it would look up
all items.
Finally you need to identify the columns you want to update. Again
you can easily select all columns or select only the columns
you are interested in. For example if you want to search for new images, you
would select the image column. If you want to add dewey numbers
to an existing database, you select the dewey column. You can select
as many columns as you like.
You can also control how Readerware updates columns, it can update
them only when empty or it can always update them, replacing the current
contents. Readerware will only update the column if data is returned
by the web search. So when searching for additional data, you
would normally update when empty. When updating
the value field, you might want to get the latest valuation so you
would always update the column. This specification is made on a
column by column basis. So you could update the image column only when
empty but always update the value column in the same auto-update run.
After you have verified your selections Readerware auto-update starts.
It will search through all the sites you selected looking for each item
in turn. If a value is returned for one of the columns you
selected, it will update the database. If nothing is returned the
current contents are unchanged.
Note that your changes are applied to your database
immediately.
Readerware displays the normal progress
dialog as it processes your request. On completion it displays a
statistics page with the number of items updated, the number
unchanged, images added etc.
You can use Readerware auto-update to add more data to your
existing databases. And you can make regular auto-update
runs to update volatile information like value.
Readerware auto-update is a very powerful feature, but you
could also overwrite important data if you are not paying attention.
You can use the Readerware backup and restore facility to make quick
and easy backups before running an auto-update.
It is never to often to backup your database.
Search and Replace
Another powerful new feature in Readerware 2.50 is search
and replace. Again there is an easy to use wizard to step you through
the process.
Row selection is identical to auto-update. You can run the replace
against your entire database, the current search results, selected search
results or you can input a list of ISBNs or UPCs.
For example if you wanted to move all items from one category to another,
you would first search for all books in the category and then run
the replace selecting the current search results.
You can only update a single column in each replace run. So the next
step is to select the column you want to update. As you change the column
selection, a suitable edit field is displayed where you can enter
or select the new value. If you do not enter a new value, then the current
contents of the column are erased. So you can use the replace function
to clear out fields as well as change them.
When using the drop down list database columns like category or format,
you can maintain the lists right in the wizard using the standard popup
menu. For example, if you wanted to set the location of the items, you can
add the new location right there in the wizard.
After you have verified your selections Readerware replace starts.
You will see the now familiar progress dialog as it updates your
database. Note that your changes are applied to your database
immediately.
On completion it displays a
statistics page with the number of items updated etc.
Readerware replace is a very powerful feature, but you
could also overwrite important data if you are not paying attention.
You can use the Readerware backup and restore facility to make quick
and easy backups before running a replace.
It is never to often to backup your database.
Give Readerware this Holiday
Yes, it's that time of the year again. If you are trying
to decide on the perfect gift for the book, music and video collectors
on your list, consider Readerware on CD.
You can give a single product or one of the product bundles.
Just place your order from the Readerware web site.
When ordering as a gift, please be sure to include the name of the recipient
so that the license key will be generated in the correct name. When ordering
via RegSoft, select the gift option. When ordering via PayPal use the
special instructions field to indicate that it is a gift.
In both cases, the CD will be shipped to you.
Tech Tip: User Numbering System
Readerware databases include a user number field that you can use to
assign your own item numbers.
Did you know Readerware can automatically assign numbers to items
for you? Utilizing Readerware custom extraction you can write a script
that assigns the user number in whatever format you require, automatically.
Readerware custom extraction interfaces with the Readerware auto-catalog
and auto-update functions. It is designed to allow you to access the
data Readerware extracts from the web but before the database is updated.
It gives you a chance to manipulate the data. You write a custom extraction
script using the Python language. Your custom extraction file is named
userexit.py and is stored in your Readerware scrapers directory.
So how does this help you assign custom numbers?
The user number column, like all columns can be changed in your
custom extraction script. Therefore you can generate your user
number in a script.
The following sample script shows you how to do this. You can easily
customize this script to format the user number to exactly meet your needs.
You can change the starting value and the increment. It works
by keeping track of the last number in a file called "SEQ.TXT". So to reset
the numbering system, all you have to do is delete this file. Look
at the comments in the script for more information.
# Scraper user exit.
#
# If this file exists it is called immediately
# before the scraper process returns. You can
# change any of the global variables to customize
# the extraction process
#
import string
import sys
def userextract():
global title,author,isbn,publisher,format,first
global signed,date,place, copies,rating,condition
global category,read,pflag,eflag,value, comments
global dateEntered,dataSource,cart,ordered
global lccn,dewey,userNumber,copyDate,valueDate
global location,series,pages,keywords,dimensions
global user1,user2,user3,user4,user5,user6
global user7,user8,user9,user10
global author2,author3,author4,author5,author6
global image,fullDateFormat,source
#
# Sample script to assign a sequential number
# to each item
#
#
# Pattern, the %d is where the sequential number
# will go, for example:
#
# "%d" = 123
# "%05d" = 00123
# SEQ%dB = SEQ123B
pattern = "ITEM%05d"
#
# The increment, defaults to 1
incr = 1
#
# The current number is stored in the file
# "SEQ.TXT", get number and update
fname = "SEQ.TXT"
try:
cntFile = open(fname, 'r')
num = cntFile.readline()
num = string.atoi(num)
num = num + incr
cntFile.close()
except:
num = 1
cntFile = open(fname, 'w')
cntFile.write("%d\n" % num)
cntFile.close()
userNumber = pattern % num
userextract()
This script will be used during Readerware auto-catalog to assign
numbers to new items as they are added to the database. It can also
be used with Readerware auto-update to assign a unique user number
to all items in your existing database. Just run auto-update,
select all items in your database, in the column selection page,
select the user number column and set it to always update.
Readerware auto-update will then go through the database and
assign a unique number to each item.
Note that indentation is important in Python scripts. If you copy/paste
the above example you might have problems. You can download the
sample script from the Readerware web site. If your browser displays
the file rather than download it, right click on the link and select
the save item. Be sure to save it as userexit.py.
Tech Tip: Pricing using web sites
Another use for Readerware custom extraction is to price each item
using an online database. As you are probably aware, Readerware
will extract the value of an item from web sites like Amazon. But
what if you wanted to value each item at say 75% of the Amazon price.
This Readerware custom extraction script will do exactly that.
You can use it as is or change the percentage to meet your needs.
# Scraper user exit.
#
# If this file exists it is called immediately
# before the scraper process returns. You can
# change any of the global variables to customize
# the extraction process
#
import string
import sys
def userextract():
global title,author,isbn,publisher,format,first
global signed,date,place, copies,rating,condition
global category,read,pflag,eflag,value, comments
global dateEntered,dataSource,cart,ordered
global lccn,dewey,userNumber,copyDate,valueDate
global location,series,pages,keywords,dimensions
global user1,user2,user3,user4,user5,user6
global user7,user8,user9,user10
global author2,author3,author4,author5,author6
global image,fullDateFormat,source
#
# Sample script to adjust the value by a set
# percentage.
#
try:
# Remove any punctuation
tempdata = string.replace(value, "$", "")
tempdata = string.replace(tempdata, ".", "")
tempdata = string.replace(tempdata, ",", "")
tempdata = string.replace(tempdata, " ", "")
# Convert to integer
tempdata = string.atoi(tempdata)
# Adjust value
percentage = 75
tempdata = ((tempdata * percentage) / 100)
# Back to string with punctuation
tempdata = "%d" % tempdata
value = "$" + tempdata[0:len(tempdata)-2] +
"." + tempdata[len(tempdata)-2:]
except:
print "Price unchanged."
userextract()
Using Readerware auto-update you can update all the prices in your
database on a regular basis. Just run auto-update,
select the all items option, in the column selection page,
select the value column and set it to always update.
Readerware auto-update will then go through the database and
update the value of each item.
Note that indentation is important in Python scripts. If you copy/paste
the above example you might have problems. You can download the
sample script from the Readerware web site. If your browser displays
the file rather than download it, right click on the link and select
the save item. Be sure to save it as userexit.py.
Site News: Alibris
Alibris is now fully supported in Readerware. Now that Alibris
has an ISBN search you can use Alibris with Readerware auto-catalog
and auto-update. You can also use it with the drag and drop interface
and the Readerware shopping cart.
Because Alibris can return multiple search results for an ISBN
search, Readerware will extract the information from the first
book returned. If you want greater control over which book is
used, you can use Readerware drag and drop.
Site News: Half.com
Half.com is now fully supported by all Readerware products.
You can use Half.com with Readerware auto-catalog
and auto-update. You can also use it with the drag and drop interface
and the Readerware shopping cart. The huge Half.com
database is now fully accessible in Readerware products, plus
they have some great prices, so be sure to use Half.com with the Readerware
shopping cart.
Site News: Fatbrain
Looking for international books? For some strange reason the US technical
bookstore Fatbrain.com has a large database of non technical international titles
and ISBNs. So next time you are cataloging a French title for example, be sure
to include Fatbrain in your site selection.
Your Feedback
Your feedback is always welcome and does make a difference. Please send in your comments.
E-Mail support@readerware.com.
Thanks for your support.
|