Just noticed that the only rate you show on the 5yr CD page for PenFed is their 7-year rate.
Looks like you need to further complicate your code by adding the ability to scrape two rates from one institution into one list :)
That is probably also an issue when institutions do an odd-term special -- i.e. a regular rate for 24-month but a special rate for 25-month. Ideally, both would wind up on the 2yr CD list.
Maybe it would be simpler to add a separate CD list for >5yrs. Those almost always have terrible early-withdrawal penalties -- so they really do belong in a category by themselves.