Spammers can get your e-mail address from almost anywhere you make your address public. You may have nothing to do with the spammer. Spammers can also get your e-mail address because you, or somebody you know, gave it to them. The more public you make your e-mail address, the more likely you are to receive spam.
Spammers can get e-mail addresses from:
Web Pages
Instant messaging services, such as ICQ and IRC
Web based discussion groups
Mailing list discussions (especially if archives of those discussions are made available on the web)
Product registration cards
Registrations with web servers
Online purchases
Other forms you fill in that request your e-mail address
Providing your e-mail address to vendors at conferences
Providing your e-mail address when downloading software