@ -235,7 +235,7 @@ registrant_regexes = [
" Domain Owner: \n \t (?P<organization>.+) \n \n [ \ s \ S]*?(?:Registrant Contact: \n \t (?P<name>.+))? \n \n Registrant(?: ' s)? (?:a|A)ddress:(?: \n \t (?P<street1>.+) \n (?: \t (?P<street2>.+) \n )?(?: \t (?P<street3>.+) \n )? \t (?P<city>.+) \n \t (?P<postalcode>.+))? \n \t (?P<country>.+)(?: \n \t (?P<phone>.+) \ (Phone \ ) \n \t (?P<fax>.+) \ (FAX \ ) \n \t (?P<email>.+))? \n \n " , # .ac.uk - what a mess...
" Registrant ID: (?P<handle>.+) \n Registrant: (?P<name>.+) \n Registrant Contact Email: (?P<email>.+) " , # .cn (CNNIC)
" Registrant contact: \n (?P<name>.+) \n (?P<street>.*) \n (?P<city>.+), (?P<state>.+) (?P<postalcode>.+) (?P<country>.+) \n \n " , # Fabulous.com
" registrant-name: \ s*(?P<name>.+) \n ( registrant-organization:\ s*(?P<organization>.*) \n )?registrant-type: \ s*(?P<type>.+) \n registrant-address: \ s*(?P<street>.+) \n registrant-postcode: \ s*(?P<postalcode>.+) \n registrant-city: \ s*(?P<city>.+) \n registrant-country: \ s*(?P<country>.+) \n (?:registrant-phone: \ s*(?P<phone>.+) \n )?(?:registrant-email: \ s*(?P<email>.+) \n )? " , # Hetzner
" registrant-name: \ s*(?P<name>.+) \n ( ?: registrant-organization:\ s*(?P<organization>.*) \n )?registrant-type: \ s*(?P<type>.+) \n registrant-address: \ s*(?P<street>.+) \n registrant-postcode: \ s*(?P<postalcode>.+) \n registrant-city: \ s*(?P<city>.+) \n registrant-country: \ s*(?P<country>.+) \n (?:registrant-phone: \ s*(?P<phone>.+) \n )?(?:registrant-email: \ s*(?P<email>.+) \n )? " , # Hetzner
" Registrant Contact Information :[ ]* \n [ ]+(?P<firstname>.*) \n [ ]+(?P<lastname>.*) \n [ ]+(?P<organization>.*) \n [ ]+(?P<email>.*) \n [ ]+(?P<street>.*) \n [ ]+(?P<city>.*) \n [ ]+(?P<postalcode>.*) \n [ ]+(?P<phone>.*) \n [ ]+(?P<fax>.*) \n \n " , # GAL Communication
" Contact Information : For Customer # [0-9]+[ ]* \n [ ]+(?P<firstname>.*) \n [ ]+(?P<lastname>.*) \n [ ]+(?P<organization>.*) \n [ ]+(?P<email>.*) \n [ ]+(?P<street>.*) \n [ ]+(?P<city>.*) \n [ ]+(?P<postalcode>.*) \n [ ]+(?P<phone>.*) \n [ ]+(?P<fax>.*) \n \n " , # GAL Communication alternative (private WHOIS) format?
" Registrant: \n Name: (?P<name>.+) \n City: (?P<city>.+) \n State: (?P<state>.+) \n Country: (?P<country>.+) \n " , # Akky (.com.mx)
@ -271,7 +271,7 @@ tech_contact_regexes = [
" Technical Contacts \n Name: (?P<name>.+) \n (?: Organization: (?P<organization>.+) \n )? ContactID: (?P<handle>.+) \n (?: Address: (?P<street1>.+) \n (?: (?P<street2>.+) \n (?: (?P<street3>.+) \n )?)? (?P<city>.+) \n (?P<postalcode>.+) \n (?P<state>.+) \n (?P<country>.+) \n )?(?: Created: (?P<creationdate>.+) \n )?(?: Last Update: (?P<changedate>.+) \n )? " , # nic.it // NOTE: Why does this say 'Contacts'? Can it have multiple?
" Tech Name[.]* (?P<name>.*) \n Tech Address[.]* (?P<street1>.*) \n Tech Address[.]* (?P<street2>.*) \n (?: Tech Address[.]* (?P<street3>.*) \n )? Tech Address[.]* (?P<city>.*) \n Tech Address[.]* (?P<postalcode>.*) \n Tech Address[.]* (?P<state>.*) \n Tech Address[.]* (?P<country>.*) \n Tech Email[.]* (?P<email>.*) \n Tech Phone[.]* (?P<phone>.*) \n Tech Fax[.]* (?P<fax>.*) " , # Melbourne IT
" Technical contact: \n (?: (?P<organization>.+) \n )? (?P<name>.+) \n (?P<email>.+) \n (?P<street>.+) \n (?P<city>.+), (?P<state>.+) (?P<postalcode>.+) (?P<country>.+) \n Phone: (?P<phone>.*) \n Fax: (?P<fax>.*) \n " , # Fabulous.com
" tech-c-name: \ s*(?P<name>.+) \n ( tech-c-organization:\ s*(?P<organization>.*) \n )?tech-c-type: \ s*(?P<type>.+) \n tech-c-address: \ s*(?P<street>.+) \n tech-c-postcode: \ s*(?P<postalcode>.+) \n tech-c-city: \ s*(?P<city>.+) \n tech-c-country: \ s*(?P<country>.+) \n (?:tech-c-phone: \ s*(?P<phone>.+) \n )?(?:tech-c-email: \ s*(?P<email>.+) \n )? " , # Hetzner
" tech-c-name: \ s*(?P<name>.+) \n ( ?: tech-c-organization:\ s*(?P<organization>.*) \n )?tech-c-type: \ s*(?P<type>.+) \n tech-c-address: \ s*(?P<street>.+) \n tech-c-postcode: \ s*(?P<postalcode>.+) \n tech-c-city: \ s*(?P<city>.+) \n tech-c-country: \ s*(?P<country>.+) \n (?:tech-c-phone: \ s*(?P<phone>.+) \n )?(?:tech-c-email: \ s*(?P<email>.+) \n )? " , # Hetzner
" Admin Contact Information :[ ]* \n [ ]+(?P<firstname>.*) \n [ ]+(?P<lastname>.*) \n [ ]+(?P<organization>.*) \n [ ]+(?P<email>.*) \n [ ]+(?P<street>.*) \n [ ]+(?P<city>.*) \n [ ]+(?P<postalcode>.*) \n [ ]+(?P<phone>.*) \n [ ]+(?P<fax>.*) \n \n " , # GAL Communication
" Technical contact: \n (?P<name>.+) \n (?P<organization>.*) \n (?P<street>.+) \n (?P<city>.+) (?P<state> \ S+),[ ]+(?P<postalcode>.+) \n (?P<country>.+) \n (?P<email>.+) \n (?P<phone>.*) \n (?P<fax>.*) " , # .am
" Technical: \n \ s*Name: \ s*(?P<name>.*) \n \ s*Organisation: \ s*(?P<organization>.*) \n \ s*Language:.* \n \ s*Phone: \ s*(?P<phone>.*) \n \ s*Fax: \ s*(?P<fax>.*) \n \ s*Email: \ s*(?P<email>.*) \n " , # EURid
@ -304,7 +304,7 @@ admin_contact_regexes = [
" Admin Contact \n Name: (?P<name>.+) \n (?: Organization: (?P<organization>.+) \n )? ContactID: (?P<handle>.+) \n (?: Address: (?P<street1>.+) \n (?: (?P<street2>.+) \n (?: (?P<street3>.+) \n )?)? (?P<city>.+) \n (?P<postalcode>.+) \n (?P<state>.+) \n (?P<country>.+) \n )?(?: Created: (?P<creationdate>.+) \n )?(?: Last Update: (?P<changedate>.+) \n )? " , # nic.it
" Admin Name[.]* (?P<name>.*) \n Admin Address[.]* (?P<street1>.*) \n Admin Address[.]* (?P<street2>.*) \n (?: Admin Address[.]* (?P<street3>.*) \n )? Admin Address[.]* (?P<city>.*) \n Admin Address[.]* (?P<postalcode>.*) \n Admin Address[.]* (?P<state>.*) \n Admin Address[.]* (?P<country>.*) \n Admin Email[.]* (?P<email>.*) \n Admin Phone[.]* (?P<phone>.*) \n Admin Fax[.]* (?P<fax>.*) " , # Melbourne IT
" Administrative contact: \n (?: (?P<organization>.+) \n )? (?P<name>.+) \n (?P<email>.+) \n (?P<street>.+) \n (?P<city>.+), (?P<state>.+) (?P<postalcode>.+) (?P<country>.+) \n Phone: (?P<phone>.*) \n Fax: (?P<fax>.*) \n " , # Fabulous.com
" admin-c-name: \ s*(?P<name>.+) \n ( admin-c-organization:\ s*(?P<organization>.*) \n )?admin-c-type: \ s*(?P<type>.+) \n admin-c-address: \ s*(?P<street>.+) \n admin-c-postcode: \ s*(?P<postalcode>.+) \n admin-c-city: \ s*(?P<city>.+) \n admin-c-country: \ s*(?P<country>.+) \n (?:admin-c-phone: \ s*(?P<phone>.+) \n )?(?:admin-c-email: \ s*(?P<email>.+) \n )? " , # Hetzner
" admin-c-name: \ s*(?P<name>.+) \n ( ?: admin-c-organization:\ s*(?P<organization>.*) \n )?admin-c-type: \ s*(?P<type>.+) \n admin-c-address: \ s*(?P<street>.+) \n admin-c-postcode: \ s*(?P<postalcode>.+) \n admin-c-city: \ s*(?P<city>.+) \n admin-c-country: \ s*(?P<country>.+) \n (?:admin-c-phone: \ s*(?P<phone>.+) \n )?(?:admin-c-email: \ s*(?P<email>.+) \n )? " , # Hetzner
" Tech Contact Information :[ ]* \n [ ]+(?P<firstname>.*) \n [ ]+(?P<lastname>.*) \n [ ]+(?P<organization>.*) \n [ ]+(?P<email>.*) \n [ ]+(?P<street>.*) \n [ ]+(?P<city>.*) \n [ ]+(?P<postalcode>.*) \n [ ]+(?P<phone>.*) \n [ ]+(?P<fax>.*) \n \n " , # GAL Communication
" Administrative contact: \n (?P<name>.+) \n (?P<organization>.*) \n (?P<street>.+) \n (?P<city>.+) (?P<state> \ S+),[ ]+(?P<postalcode>.+) \n (?P<country>.+) \n (?P<email>.+) \n (?P<phone>.*) \n (?P<fax>.*) " , # .am
" Administrative Contact: \n Name: (?P<name>.+) \n City: (?P<city>.+) \n State: (?P<state>.+) \n Country: (?P<country>.+) \n " , # Akky (.com.mx)