Inspiration
We were inspired after reading a report from the Polaris Project about how massage parlors are used as sites for sex trafficking, as well as being linked to other legitimate businesses through shady legal ties. We wanted to provide this information to review sites such as Yelp in the form of an API so that they can check whether a given listing has trafficking connections or not. This can be used for not only massage parlors, but nail salons, food services or other businesses that employ trafficked workers.
What it does
The public API can check whether a given email, domain name, IP address, Business address or phone number is affiliated with a business employing trafficked workers. It can also check the image uploaded for a listing to match a database of hashed images that are known to be child pornography related. It also compiles the names, phone numbers, and addresses of all 25,207 massage parlors listed on the largest massage parlor review website rubmaps.ch.
How I built it
It was built using Python along with Selenium for the web driver, BeautifulSoup to parse the website, and pandas to store the data.
Challenges I ran into
The Perception API's dataset was inaccessible because of 403 errors. The address data wasn't always in the expected order in HTML, so modifications had to be made to accommodate these slight differences. The program also takes about 30-45 minutes to complete.
Accomplishments that I'm proud of
The public API is very user friendly. The dataset is mostly clean and readable.
What I learned
How to scrape a website, and deal with HTML problems.
What's next for RedAlert
The data can be used to link massage parlors to legitimate businesses, and report to a user if the legitimate business indicated by a phone number and/or business address is linked to a massage parlor from the rubmaps website.
Log in or sign up for Devpost to join the conversation.