completely random, and depends on the numbers of hours played that week.
You have a change to find items every 30-70 minutes, hats being rarer than weapons and crates having their own drop count.
The drop cap is 10 hours of gameplay.
I got this all from here <3