You can find weapons in chests, in skag "piles", through enemies drops and in stores. There is no way to guarantee finding a specific item unless you're looking for a weapon which a boss drops. You'll have to just cross your fingers and hope for the best. If you really need one you can always open the game, check the nearest store and if it doesn't have one, quit to main menu and do so again. This is how people loot New Haven and other areas.