The right way to do this is via the Baire Category Theorem, but it may be helpful to also give a more-or-less explicit construction. Let $U_n, \ n=1,2,\ldots$ be a sequence of open sets, each containing the rationals $\mathbb Q$. I will find a member of $\bigcap_{n=1}^\infty U_n$ that is not in $\mathbb Q$. Let $r_n, \ n=1,2,\ldots$ be an enumeration of the rationals. I will construct two sequences $a_n$ and $b_n, \ n= 1,2,\ldots$ such that
$a_n < a_{n+1} < b_{n+1} < b_n$, $(a_n, b_n) \subset U_n$, and $r_n \notin (a_n, b_n)$. Namely, given $a_n$ and $b_n$, we can find a rational $c \ne r_{n+1}$ in $(a_n, b_n)$ and take $a_{n+1} = c - \delta$ and $b_{n+1} = c + \delta$ where $\delta>0$ is small enough that $(c-\delta, c+\delta) \subset U_{n+1}$, $c - \delta > a_n$, $c + \delta < b_n$ and $\delta < |r_{n+1} - c|$. Now the sequence $a_n$ is bounded above and increasing, so it has a limit $L$. By construction, $L \in (a_n, b_n) \subset U_n$ for each $n$, i.e. $L \in \bigcap_{n=1}^\infty U_n$, Moreover, $L \ne r_n$ for all $n$, so $L \notin \mathbb Q$, as required.