O'Reilly Hacks
oreilly.comO'Reilly NetworkSafari BookshelfConferences Sign In/My Account | View Cart   
Book List Learning Lab PDFs O'Reilly Gear Newsletters Press Room Jobs  



HACK
#17
Consulting the Phonebook
Google makes an excellent phonebook, even to the extent of doing reverse lookups.

Contributed by:

[03/13/03 | Discuss (18) | Link to this hack]

Google combines residential and business phone number information and its own excellent interface to offer a phonebook lookup that provides listings for businesses and residences in the United States. However, the search offers three different syntaxes, different levels of information provide different results, the syntaxes are finicky, and Google doesn't provide any documentation.

Using the Syntaxes

Using a standard phonebook requires knowing quite a bit of information about what you're looking for: first name, last name, city, and state. Google's phonebook requires no more than last name and state to get it started. Casting a wide net for all the Smiths in California is as simple as:

phonebook:smith ca 

Try giving 411 a whirl with that request! shows the results of the query.

Figure 1. phonebook: result page

Notice that, while intuition might tell you there are thousands of Smiths in California, the Google phonebook says there are only 600. Just as Google's regular search engine maxes out at 1000 results, its phonebook maxes out at 600. Fair enough. Try narrowing down your search by adding a first name, city, or both:

phonebook:john smith los angeles ca 

At the time of this writing, the Google phonebook found 3 business and 22 residential listings for John Smith in Los Angeles, California.

Caveats

The phonebook syntaxes are powerful and useful, but they can be difficult to use if you don't remember a few things about how they work.

  • The syntaxes are case-sensitive. Searching for phonebook:john doe ca works, while Phonebook:john doe ca (notice the capital P) doesn't.

  • Wildcards don't work. Then again, they're not needed; the Google phonebook does all the wildcarding for you. For example, if you want to find shops in New York with "Coffee" in the title, don't bother trying to envision every permutation of "Coffee Shop," "Coffee House," and so on. Just search for bphonebook:coffee new york ny and you'll get a list of any business in New York whose name contains the word "coffee."

  • Exclusions don't work. Perhaps you want to find coffee shops that aren't Starbucks. You might think phonebook:coffee -starbucks new york ny would do the trick. After all, you're searching for coffee and not Starbucks, right? Unfortunately not; Google thinks you're looking for both the words "coffee" and "starbucks," yielding just the opposite of what you were hoping for: everything Starbucks in NYC.

  • OR doesn't always work. You might start wondering if Google's phonebook accepts OR lookups. You then might experiment, trying to find all the coffee shops in Rhode Island or Hawaii: bphonebook:coffee (ri | hi). Unfortunately that doesn't work; the only listings you'll get are for coffee shops in Hawaii. That's because Google doesn't appear to see the (ri | hi) as a state code, but rather as another element of the search. So if you reversed your search above, and searched for coffee (hi | ri), Google would find listings that contained the string "coffee" and either the strings "hi" or "ri." So you'll find Hi-Tide Coffee (in Massachusetts) and several coffee shops in Rhode Island. It's neater to use OR in the middle of your query, and then specify your state at the end. For example, if you want to find coffee shops that sell either donuts or bagels, this query works fine: bphonebook:coffee (donuts | bagels) ma. That finds stores that contain the word coffee and either the word donuts or the word bagels in Massachusetts. The bottom line: you can use an OR query on the store or resident name, but not on the location.


O'Reilly Home | Privacy Policy

© 2007 O'Reilly Media, Inc.
Website: | Customer Service: | Book issues:

All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners.