Good Samaritan pulls woman from canal