Access Point (AP) selection is an important problem in WLANs as it affects the throughput of the joining station (STA). Existing approaches to AP selection predominantly use received signal power and as such, do not take into account interference and collisions at each STA, and transmit opportunities (TXOPs) at APs. In this paper, we propose a class of AP selection algorithms based on the joining STA's expected throughput by taking into account the above factors. Specifically, we collect a binary-valued local channel occupancy signal, called busy-idle (BI) signal, at each node and require the APs to periodically broadcast their BI signal together with a quantity that represents TXOPs at the APs. This enables the joining STA to estimate expected throughput for each candidate AP before it selects one. To capture TXOPs at each AP, we propose a few different quantities, including the number of associated STAs, sum of inverse of MAC rates, and the average waiting and idle times. We use NS-2 simulations to demonstrate the effectiveness of our algorithms. For a random topology consisting of 24 APs and 60 STAs, our algorithms can increase average throughput of the joining STA by as much as 52% as compared to the traditional signal power based AP selection approach (rxpwr). In this case, the achieved average throughput is 97% of that obtained via the optimal selection. We also show that, in contrast to rxpwr, the throughput of our proposed algorithms remain close to optimal with the increase in AP density or STA density.