1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Scraping Real Usernames for Dummies - Extremely Easy Method

Discussion in 'Black Hat SEO' started by MatthewGraham, Jun 17, 2017.

  1. MatthewGraham

    MatthewGraham Jr. VIP Jr. VIP

    Joined:
    Oct 6, 2015
    Messages:
    1,055
    Likes Received:
    916
    Gender:
    Male
    Occupation:
    Rolling Face on Keyboard
    Location:
    United States of America
    Home Page:
    Randomly generated usernames tend to look terrible and out of place.

    If everything is FirstLastYear, accounts look unnatural. Tools that can do things like combine random nouns and adjectives are better, but still seem out of place especially if you're using a ton of different accounts.

    Easy solution: Scrape usernames that people actually use and make slight modifications

    This is a great method to get a wide variety of usernames, with a good mix of niche-related names, that look very natural.

    Here's a super easy way to do this.

    1. Get a content scraper.
    This is a super easy-to-use browser extension for Chrome that I have used for miscellaneous things for years:
    https://chrome.google.com/webstore/...jd?utm_source=chrome-app-launcher-info-dialog

    2. Find a forum that you want to scrape usernames from.
    Can be basically anything - Reddit, Quora, Yahoo Answers, etc. Can be a good idea to scrape from a different forum from where you want to actually use the accounts.

    If you want to get niche-related usernames, reddit is a good option. I'll do an example here. Consider a situation where you want to generate usernames that you could use when shilling for athletic equipment. Go to a forum related to athletics, such as:
    https://www.reddit.com/r/Basketball/new/

    3. Scrape the Usernames
    To scrape from reddit using the scraper extension linked to:
    a. Click "Scrape Similar" in the tool
    b. Enter this into the selector field (XPath): //*[contains(@Class, 'author')]

    Don't know anything about XPath? This command lets you find an HTML element by CSS class using XPath. The username fields on reddit uses the css class "author". You can adjust the name of the class as needed if you want to use this somewhere else.

    If you're scraping form somewhere else, using something that isn't XPath, or are using a different tool you'll of course need to adjust the selector/input.

    4. Example Result of Scraping
    After following the above steps on the "New" page of reddit's Basketball forum, these are the names that were scraped:

    rsrsrsrs
    townie_immigrant
    JoeAllan
    theReluctantHipster
    Seppecx
    alexin9th
    bluexdd
    UltimateZ906
    onegeeheeone
    nachofromsweden
    hoophacking
    anklerollguard
    ShizzleStorm
    OverEmotionalCavsFan
    CritThom
    onegeeheeone
    BhiefBeef
    Dragon---
    Lakersnation40
    kwazaer113
    wadsworthandrea
    museirish
    mcgoverntowanda
    pornkingdas
    GeorgeThomasClark
    J0ak3s
    blueberrybadguy
    Yeti_Boi
    DatDudeJB19

    Reddit has 25 names per page. This query actually ended up getting us 29 since it scraped the moderator's usernames from the sidebar too.

    You can see that since these were scraped from a Basketball subreddit/forum, a good mix of sports/basketball related names are mixed in while also having other names from more casual users. It is a natural mix of niche-related usernames.

    Note: If you have the NeverEndingReddit extension installed, you can load many pages on the same page so that you can scrape a lot of usernames with one run of the extension. Or load a thread with a lot of comments if you want to scrape a lot at a time

    Note 2: Scraping from the "new" section can be better than scraping from the top posts because this will get you a wider variety of names. The people who have top posts may be well known users, so using names of the newer posters may make using variations of their names be more natural. Ideally you will use the names on a different forum anyway.


    5. Adjust the Usernames (if using on the same forum that you've scraped from)

    If you're going to use the names on a different website entirely, you could skip this step. For example if you scrape names from Reddit to then use on Twitter, you may not need to change them.

    If you want to reuse elsewhere on the same site, then you'll want to modify the names slightly. There are a few ways to do this:

    a. Automated spin (mediocre)
    You can use an Excel formula or similar to easily do things like add underscores in random positions in the username, change the letter "E" to "3", append a random number at the end, etc.

    If you want to take this approach, here's an Excel formula that you can try:
    =left(replace(A1,RANDBETWEEN(1,len(A1)), 0, "_"),20)
    * Inserts an underscore at a random location
    * If username generated is over 20 characters, crop out any chars after the 20th one (max length of a reddit username is 20 characters)

    Adjust as needed. You could easily write a better spin with a Python script or similar. Here's the output of the Excel formula above:

    rsrsrs_rs
    townie_immi_grant
    _JoeAllan
    theReluctantHipst_er
    Sep_pecx
    alexin_9th
    bluexd_d
    U_ltimateZ906
    onege_eheeone
    nac_hofromsweden
    _hoophacking
    ank_lerollguard
    Shiz_zleStorm
    OverEmotional_CavsFan
    Cr_itThom
    onege_eheeone
    Bh_iefBeef
    Dragon_---
    Lakersn_ation40
    _kwazaer113
    w_adsworthandrea
    museir_ish
    _mcgoverntowanda
    _pornkingdas
    GeorgeThomas_Clark
    J0a_k3s
    blueberrybad_guy
    Y_eti_Boi
    DatDud_eJB19

    b. Manual Spin (better method)

    Make minor changes in a way that is logical. For example, if the username has a number consider changing it to another number, add an underscore or dash in a logical place, change a word around like "Lakers" to "Blazers" or "Beef" to "Veal", etc.

    Example result (took maybe two minutes to do):

    rsrsrsrsrs
    town_immigrants
    JoeAllanCarter
    MyReluctantHipster
    Seppecxx
    alexin12th
    blue-xdd
    UltimateZ096
    onegoohooone
    nachofromdenmark
    hoopsmacking
    anklerollpointguard
    ShizzleStorms
    OverEmotionalEaglesFan
    CriticalThom
    onegeeheeone4
    BhiefVeal
    Dragons---
    Lakersnationrules40
    kwazaer123
    wadsworthandrew
    musicalirish
    mcgoverntowanda94
    pornkingdanny
    George_Thomas_Clark
    J0ack3s
    blueberryvillain
    Yeti_Bois
    ThatDudeJB19

    It takes maybe five seconds to spin each name and you'll get better results; you could spin 720 in an hour. Or get a VA or employee to do it for you.

    6. Create the Accounts
    You can do this either through an automated tool if you have access to one or pay a VA with decent proxies to make the accounts for you.

    7. Collect Money
    Great. Now you have a bunch of accounts with usernames that are widely varied and natural. Use them however you please -- do forum marketing, sell accounts, or whatever else you can imagine.

    Conclusion
    Hope this method is useful to some of you out there. I've been using this method as one of various ways to get forum accounts with real-looking usernames for a while now and have always had good results. It's an easy method to do as well, so you can easily teach the whole process to a VA or employee to save time.

    Any questions on this method, feel free to ask! If you have good methods to generate realistic usernames in bulk for forum marketing, please post in the comments. I'd be glad to hear them.
     
    • Thanks Thanks x 6
    Last edited: Jun 17, 2017
  2. SEO

    SEO Jr. VIP Jr. VIP

    Joined:
    Jan 6, 2017
    Messages:
    865
    Likes Received:
    649
    Like the idea, I think you could also pull this off with Scrapebox's Custom data grabber. The gold nugget in this whole method is the ability to scrape niche relevant usernames. That's just a good idea. Next time I need some usernames I'll probably give this a shot. Also, good job providing tips that make it free for newbs.
     
  3. MatthewGraham

    MatthewGraham Jr. VIP Jr. VIP

    Joined:
    Oct 6, 2015
    Messages:
    1,055
    Likes Received:
    916
    Gender:
    Male
    Occupation:
    Rolling Face on Keyboard
    Location:
    United States of America
    Home Page:
    Yes, I would imagine that Scrapebox would work well for this. There are definitely ways to do this with increased efficiency, such as writing a script where all you have to do is insert the page you want to scrape and it returns the UNs, ideally with features like automatically removing duplicates and so on. Definitely something to look into on a larger scale.

    And the niche-relevance is definitely key. It's great for niche forum marketing. And the names make sense too -- not just "BasketballFan9" and so on.

    Hope you get good results with the method!
     
  4. MatthewGraham

    MatthewGraham Jr. VIP Jr. VIP

    Joined:
    Oct 6, 2015
    Messages:
    1,055
    Likes Received:
    916
    Gender:
    Male
    Occupation:
    Rolling Face on Keyboard
    Location:
    United States of America
    Home Page:
    Also, correction to the XPath for scraping usernames on Reddit:

    BHW's comment formatting capitalized a letter the the XPath selector to:
    //*[contains(@Class, 'author')]

    It should be this (lowercase c in class). Remove the space between the @ and 'class'.

    //*[contains(@ class, 'author')]
     
  5. MatthewGraham

    MatthewGraham Jr. VIP Jr. VIP

    Joined:
    Oct 6, 2015
    Messages:
    1,055
    Likes Received:
    916
    Gender:
    Male
    Occupation:
    Rolling Face on Keyboard
    Location:
    United States of America
    Home Page:
    Also, ended up revisiting step 5a (automatic spin) to save time. Put together a script to spin usernames in a more natural way.

    Script attached as a .txt file. It's written in JavaScript. File uploads of .js type are disallowed, so uploaded as a .txt. It's the same code either way. Easiest way to run is also copy-paste this the code into Google Sheets under Tools -> Script Editor (presumably Excel can also run this) to create a function that can easily be used in a spreadsheet:
    =robospin_username(Username_to_Spin, Maximum_Length_For_Returned_Username)
    =robospin_username("JoeAllan", 20)


    Here's a test output on the names scraped earlier in this thread. Not quite as good as a manual spin but also way faster and look basically fine.

    rzrsrsrs
    townle_immigrant
    JoeAllen
    theRelactantHipster
    Seppeccks
    alexin9tw
    bIuexdd
    UltimateZ9o6
    onegeeweeone
    nachufromsweden
    hoophecking
    ankIerollguard
    ShizzliStorm
    Over3motionalCavsFan
    CritGhom
    odegeeheeone
    Bhi3fBeef
    Drag0n---
    Lakerznation40
    klazaer113
    wadswostthandrea
    museistish
    mcgoverngowanda
    postnkingdas
    GeorgeThomasKlark
    J0ek3s
    blueberrybadfuy
    Yegi_Boi
    DatDudeJB10
     

    Attached Files:

    • Thanks Thanks x 2
  6. SEO

    SEO Jr. VIP Jr. VIP

    Joined:
    Jan 6, 2017
    Messages:
    865
    Likes Received:
    649
    You earned a thanks for that. Writing code for everyone is pretty cool of you to do.
     
  7. MatthewGraham

    MatthewGraham Jr. VIP Jr. VIP

    Joined:
    Oct 6, 2015
    Messages:
    1,055
    Likes Received:
    916
    Gender:
    Male
    Occupation:
    Rolling Face on Keyboard
    Location:
    United States of America
    Home Page:
    It's saved a good amount of time for my employees, hope it's useful to others too.
     
  8. Panther28

    Panther28 Jr. VIP Jr. VIP

    Joined:
    May 2, 2010
    Messages:
    2,883
    Likes Received:
    3,876
    Occupation:
    Internet.
    Location:
    Internet.
    Home Page:
    A better method is to pay someone to go to spinxo.com and write down the usernames, spin the page, and do till you have however many you need.
    They have a superb database of usernames it must be hundreds of thousands.