My favorites | Sign in
Project Logo
                
Search
for
Updated Yesterday (24 hours ago) by arnoegw.code
TransitFeedDistribution  
A Distribution of python tools

Introduction

The TransitFeedDistribution contains several parts, each with its own instructions

  • TransitFeed - a Python module for reading, writing, and validating feeds
  • FeedValidator - a command line tool that checks a Google Transit Feed for problems
  • ScheduleViewer - an application for exploring a feed on a map
  • KMLWriter - an application for plotting a feed's stops in a KML file for viewing in Google Earth

Download

You may download the transitfeed distribution as Windows executables, a source tar ball or directly from our Subversion repository.

Windows Executable

If you just want to run the tools you may download prebuilt Windows programs from the downloads section. Download the latest version of transitfeed-<version>-windows.zip and unzip the contents into an empty directory. Then see the ScheduleViewer and FeedValidator pages for further instructions.

Install source distribution

Some features of the distribution depend on ElementTree (added to Python's standard library in version 2.5) and pytz. You may need to install these manually.

easy_install transitfeed will download and install transitfeed and the scripts that come with it.

If you don't have easy_install on your computer you may download transitfeed-<version>.tar.gz from the downloads section. Expand with tar -xzf transitfeed-<version>.tar.gz. You may run the tools directly from the expanded directory or run python2.4 setup.py install.

Subversion repository

If you want to make changes grab our source from http://googletransitdatafeed.googlecode.com/svn/trunk/python.

Bugs and feature requests

Please create a new issue if you find bugs or have a feature requests. Patches released under the terms of the Apache 2.0 license are more than welcome! You may contact the developers in the Google Transit Data Feed Google Group.

Revision History

1.2.4 (2009-11-24) +++ STILL STUCK IN TESTING
1.2.3 (2009-11-05)
  • Validation changes
  • transitfeed API changes
    • Make transitfeed.Route.AddTripObject private
    • Only write agency.txt, stops.txt, routes.txt and trips.txt if they are created
  • Other changes
    • Fix google_random_queries.py to output URLs with ISO 8601 date formats to avoid locale issues (Richard)
    • Fix broken tests in Windows
    • Fix kmlparser
1.2.2 (2009-10-16)
  • Validation changes
  • New features
    • feedvalidator.py --duplicate_trip_check Check for duplicate trips which go through the same stops with same service and start times. (Guangfan)
    • feedvalidator.py --limit_per_type=N default is 5. only show the first N warnings or errors of each type. This saves memory when there are many problems. ( issue 37 )
    • unusual_trip_filter.py --route_type apply filter only to selected route type. (Jiri)
    • feedvalidator.py -o CONSOLE print all errors and warnings to the command console. This lets the validator output useful information before a crash and saves memory when there are many problems.
    • location_editor.py adds support for editing station locations to schedule_viewer (Jiri)
  • Fix for
    •  issue 57 , sort of fixed. Added Schedule(load_stop_times=False) used by google_random_queries.py
    •  issue 160 , feedvalidator crash when given bad path
    •  issue 153 , merger crash when given wrong number of arguments
    •  issue 156 , merge raises error and crashes on input with warning or error
    •  issue 177 , Inconsistent line ends error message should say what file had the bad lines
    • examples/google_random_queries.py prints errors and warnings to console instead of crashing
  • transitfeed.Schedule gets new method GetServicePeriodsActiveEachDate
  • The check for stops served by subway and bus and duplicate_trip_check use a second scan of stop_times, which increases validation time by ~10%. They may be disabled by default in a future release.
1.2.1 (2009-05-26)
1.2.0 (2009-02-27)

v1.1.9 (2008-12-01)

v1.1.8 (2008-11-25)

v1.1.7

v1.1.6

Measured in linux 2.6.22 on an Intel Core 2 Duo CPU T7300 at 2GHz laptop using feedvalidator.py -p.

Version Dataset stop_time rows Memory (MB) Time (s)
1.1.5 bart 33k 31 12
portland 1134k 984.2 551
1.1.6 bart 33k 29.5 20
portland 1134k 149.0 746
1.1.6 --memory_db portland 1134k 235.8 738

v1.1.5

v1.1.4

v1.1.3

v1.1.2

v1.1.1

v1.1.0

  • Schedule Viewer now displays shapes when available.
  • FeedValidator now shows feed metadata at the top of its output and highlights the relevant column for problems.
  • Added --output switch to set HTML output path and made -n switch disable loading of output in browser in FeedValidator.
  • Validation changes:
    • Duplicate schedule_id validation now works
    • Error on stops that don't pick up, drop off, or act as a timepoint
    • Error when day in service period isn't set to "1" or "0"
    • More thorough checking of date values
    • Error when a stop time departs before it arrives
    • Error when a stop time specifies either arrival or departure time, but not both

v1.0.9

  • FeedValidator now provides nicer HTML output in a browser instead of hard-to-read text.
  • Added a directory of example Python scripts using transitfeed.
  • kmlparser converts KML lines into GTFS shape.

v1.0.8

Move schedule_viewer data files and marey_graph into package gtfsscheduleviewer so that setup.py installs them in a sensible place. Add a hack so py2exe schedule_viewer can find its data files. schedule_viewer --key option will get key from a file if it exists.

v1.0.7

Adds kmlparser and kmlwriter utilities for partially converting feeds from and to Google Earth KML format. Also includes several validation improvements, particularly to stop times and route_short_name.

v1.0b6

Adds a Windows executable for schedule_viewer.

v1.0b5

Adds more validation of service_ids.

v1.0b4

Further improves line wrapping, improves ID display, limits the number of unused stops shown.

v1.0b3

Adds better line wrapping to make the output more pleasant to read.

v1.0b2

Adds testing to identify stops that probably refer to the same location because they're close enough together.

v1.0b1

First standalone Windows version.


Sign in to add a comment
Hosted by Google Code