About pSearch
pSearch is a multi-search tool coded with Python, it is mainly focused on piracy related websites.
It uses urllib and BeautifulSoup to connect and scrape the websites. JSON format is used to store the information about the websites.
I started this project as a practice for Python, urllib and BeautifulSoup. After I finished their chapters from https://www.py4e.com/, I wanted to test them just to get
a real experience of them. I also thought that, someone at some point will have to search for a specific software and game, and they have to go to the piracy sites individually one by one, so why not have a program that does it automatically? I know that there are a lot of other similar software and even websites, but for the sake of using urllib and BeautifulSoup, I wanted to do it anyways.
It has evolved a lot since the first version. At first it was specifically several sites, then I thought that the program should be built in a way that doesn't need a lot of modifications when new sites are added. Hence, I added JSON for storing web information. Already at that point the program was automatic, every site I added didn't need configuration with the main program, only some have exceptions due to the links they put and the program scrapes. Then when I finished the Database chapter, I wanted to have an experience with that as well, just like with JSON.
Database Content
{
- "hasmainlink": "some sites don't have the main link of the website when the results come back, so if this value is 1 then the program adds the main domain at the beginning. If 0, then it does nothing. The 1/0 is entered here without quotations",
- "key1": "The name of the element that the <\a> tag containing the result link is stored in. ex. div",
- "key2": "The name of the attribute in the element key1 to identify uniquely the results, or else it'll scrape all of the elements. We just want the ones containing the results, so we have to uniquely identify them. ex. class",
- "key3": "The value of the attribute key2. ex. entry-title",
- "name": "The name of the website",
- "plusorspace": "If the value is 0, then the website uses plus to separate words by space in the search url when doing a search. If 1, then the website uses actual space to separate words by space in the search url, %20. 0/1 is entered here with no quotation",
- "searchurl": "The search url used to add the strings at the end and operate a search. For example: https://filecr.com/search/?q=",
- "type": "The type of the website: games, software, android, music, courses, ebooks, comics_manga, assets, movieseries. Browse the JSON file to be familiar with the types available",
- "url": "The main domain of the website. This can be kept empty if hasmainlink is 0, but if it's 1 then this has to have the domain. Be careful of the / at the end and check the link of the results to see if it starts with / or no. For example: https://filecr.com"
}
All of these above can be viewed with by opening the websites.json file from the others folder using any text editor.
Check Github for More Information
Click here to visit my program's Github page, which includes more information on how to use the program..
You can get the exe from the Releases page on Github for faster running method, or by clicking the download for windows button that's at the top of this page..
Thank you for using the program!