What I do…
Import members as contacts into a database, loop through the database, send an email to each one with a unique query ID to a signup page, upon signup pre fill their details and have an input field for password. In the email put something like,
“Hey to better your user experience we have created a new site and require you to reset your password, please reset your password using the below link”
Delete the item from the contacts database once they do it so you can send follow up emails if they don’t.
This way the just click and enter a password, you then register them with repopulated fields from the Database.
Only other way is create a loop through a database to build randomly generated passwords and email them their passwords, a lot less secure obviously.