Marc’s list above is a good one which is probably the best starting points but there are others if they don’t work.
There is an app called Futbology which allows you to search matches around you witin a small or large radius, down to a low level. It’s great though there is a small charge. You can download the ‘La Liga’ app which covers games in the top divisions, and for lower down use soccerway. Note that exact days and kick off times may only be set a few weeks out.
I would recommend getting tickets in advance. . Crowds are pretty big . Prices depend on opponents.
Bilbao is a good recommendation. The ground is in the city centre, which means that there is a good ‘build up’ in the bars around the ground from about three hours before kick off. They are at home on the weekends of 12 and 19 May to Osasuna and Seville respectably. Ticket should be gettable through official channels.
The top division ends on the weekend of 26 May and the 2nd division goes on a little longer!
‘Marca’ is the ‘go to’ Spanish daily sports paper and that has a lot of info close to matches. .