Or a source that will allow me to just get the list of dates into a program, I'm trying to do this in python but I want it to be able to figure out the next expiration automatically, or something like Quandl where it can just pull the data.
They expire 30 days before the expiration of the S&P monthly options. The latter usually expire on the third Friday of the month (however, in rare cases the S&P opts. expire on Thursday because the Friday is a holiday; the last time it happened was April 17, 2014 since April 18 2014 was a NYSE holiday).
Neglecting the holiday thing, the expiration dates can easily be found with excel. (Given a month, you find the date of the third friday and then you subtract 30). To do the calculation perfectly you would need a table of NYSE holidays, which is available on the nyse web site.
For weekly vix futures (which started trading recently), it is the same logic, but where you look at all Fridays except the third, which was already used for the monthlies; and you subtract 30. Again the holiday thing applies; for example March 25, 2016 (4th Friday of March) will be a holiday so you use Thursday March 24, subtract 30 and get February 23, 2016 as the next "week4" expiration