annotate Tools/world/README @ 54294:dba767bc3155 legacy-trunk

remove mention of old ctypes version
author Benjamin Peterson <benjamin@python.org>
date Sat, 23 May 2009 20:59:09 +0000
parents 44267b88fb59
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9597
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
1 world -- Print mappings between country names and DNS country codes.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
2
9635
44267b88fb59 "Author" -> "Contact"
Barry Warsaw <barry@python.org>
parents: 9597
diff changeset
3 Contact: Barry Warsaw
9597
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
4 Email: bwarsaw@python.org
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
5
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
6 This script will take a list of Internet addresses and print out where in the
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
7 world those addresses originate from, based on the top-level domain country
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
8 code found in the address. Addresses can be in any of the following forms:
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
9
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
10 xx -- just the country code or top-level domain identifier
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
11 host.domain.xx -- any Internet host or network name
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
12 somebody@where.xx -- an Internet email address
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
13
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
14 If no match is found, the address is interpreted as a regular expression [*]
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
15 and a reverse lookup is attempted. This script will search the country names
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
16 and print a list of matching entries. You can force reverse mappings with the
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
17 `-r' flag (see below).
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
18
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
19 For example:
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
20
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
21 %% world tz us
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
22 tz originated from Tanzania, United Republic of
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
23 us originated from United States
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
24
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
25 %% world united
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
26 united matches 6 countries:
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
27 ae: United Arab Emirates
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
28 uk: United Kingdom (common practice)
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
29 um: United States Minor Outlying Islands
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
30 us: United States
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
31 tz: Tanzania, United Republic of
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
32 gb: United Kingdom
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
33
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
34
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
35 [*] Note that regular expressions must conform to Python 1.5's re.py module
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
36 syntax. The comparison is done with the search() method.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
37
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
38 Country codes are maintained by the RIPE Network Coordination Centre,
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
39 in coordination with the ISO 3166 Maintenance Agency at DIN Berlin. The
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
40 authoritative source of counry code mappings is:
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
41
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
42 <url:ftp://info.ripe.net/iso3166-countrycodes>
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
43
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
44 The latest known change to this information was:
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
45
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
46 Thu Aug 7 17:59:51 MET DST 1997
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
47
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
48 This script also knows about non-geographic top-level domains.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
49
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
50 Usage: world [-d] [-p file] [-o] [-h] addr [addr ...]
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
51
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
52 --dump
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
53 -d
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
54 Print mapping of all top-level domains.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
55
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
56 --parse file
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
57 -p file
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
58 Parse an iso3166-countrycodes file extracting the two letter country
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
59 code followed by the country name. Note that the three letter country
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
60 codes and numbers, which are also provided in the standard format
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
61 file, are ignored.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
62
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
63 --outputdict
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
64 -o
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
65 When used in conjunction with the `-p' option, output is in the form
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
66 of a Python dictionary, and country names are normalized
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
67 w.r.t. capitalization. This makes it appropriate for cutting and
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
68 pasting back into this file.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
69
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
70 --reverse
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
71 -r
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
72 Force reverse lookup. In this mode the address can be any Python
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
73 regular expression; this is matched against all country names and a
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
74 list of matching mappings is printed. In normal mode (e.g. without
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
75 this flag), reverse lookup is performed on addresses if no matching
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
76 country code is found.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
77
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
78 -h
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
79 --help
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
80 Print this message.
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
81
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
82
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
83 Local Variables:
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
84 indent-tabs-mode: nil
5831bb3ca42a intermediate
Barry Warsaw <barry@python.org>
parents:
diff changeset
85 End: