Я пытаюсь перевести эту таблицу http://www.datamystic.com/timezone/time_zones.html в формат массива, чтобы я мог делать с ней все, что захочу. Желательно в PHP, Python или JavaScript.
Эта проблема часто возникает, поэтому вместо того, чтобы искать помощь по этой конкретной проблеме, я ищу идеи, как решить все подобные проблемы.
BeautifulSoup - это первое, что приходит на ум.
Другая возможность - скопировать / вставить его в TextMate, а затем запустить регулярные выражения.
Что вы предлагаете?
Это сценарий, который я закончил писать, но, как я уже сказал, я ищу более общее решение.
from BeautifulSoup import BeautifulSoup
import urllib2
url = 'http://www.datamystic.com/timezone/time_zones.html';
response = urllib2.urlopen(url)
html = response.read()
soup = BeautifulSoup(html)
tables = soup.findAll("table")
table = tables[1]
rows = table.findAll("tr")
for row in rows:
tds = row.findAll('td')
if(len(tds)==4):
countrycode = tds[1].string
timezone = tds[2].string
if(type(countrycode) is not type(None) and type(timezone) is not type(None)):
print "\'%s\' => \'%s\'," % (countrycode.strip(), timezone.strip())
Комментарии и предложения по улучшению моего кода на Python тоже приветствуются;)