.get_all_data() for Options fails if either puts or calls have no data
While invoking .get_all_data() and collecting options data for all strikes and expirations the entire dataframe errors out as soon as the parser comes across an expiration chain where data is only available for one type (calls or puts) and not both.

For example:

new_data=pd.DataFrame()
option = Options('AA', 'yahoo')
data = option.get_all_data()

Crashes with:

  File "/usr/lib/python2.7/dist-packages/pandas/io/data.py", line 1139, in get_all_data
    return self._get_data_in_date_range(dates=expiry_dates, call=call, put=put)
  File "/usr/lib/python2.7/dist-packages/pandas/io/data.py", line 1153, in _get_data_in_date_range
    frame = self._get_option_data(expiry=expiry_date, name=name)
  File "/usr/lib/python2.7/dist-packages/pandas/io/data.py", line 771, in _get_option_data
    frames = self._get_option_frames_from_yahoo(expiry)
  File "/usr/lib/python2.7/dist-packages/pandas/io/data.py", line 688, in _get_option_frames_from_yahoo
    option_frames = self._option_frames_from_url(url)
  File "/usr/lib/python2.7/dist-packages/pandas/io/data.py", line 725, in _option_frames_from_url
    raise RemoteDataError('Received no data from Yahoo at url: %s' % url)
pandas.io.data.RemoteDataError: Received no data from Yahoo at url: http://finance.yahoo.com/q/op?s=AA&date=1450396800

Since about half tickers have such chains, pulling data reliably is a challenge.

Python 2.7.9
Pandas was installed through pip
Ubuntu 15.04
## pip shows pandas:

Name: pandas
Version: 0.15.0
Location: /usr/lib/python2.7/dist-packages
Requires: python-dateutil, pytz, numpy
## ~$ pip show pandas-datareader

Name: pandas-datareader
Version: 0.2.0
Location: /usr/local/lib/python2.7/dist-packages
Requires: pandas
