Last June I emailed the team at Criticker for permission to 're-create' Criticker as part of my final year project for my Software Engineering degree. I've begun working on Probable Score Indicators, but I currently have a lack of data to populate my database with, which I need in order to continue development. Although I'm working on a system to generate dummy data, it would be significantly faster if the kind people of Criticker could send me their exported reviews.
One concern I can see people may have is privacy, although looking at the exported XML file, no actual user details are stored in the export (I have highlighted the fields I intend to use):
I intend to create dummy accounts and then import the ratings into that account. The current limitation of importing XML ratings is that I have had to migrate an IMDb dataset that I found on Kaggle, so I am limited to the IMDb IDs that already exist in that dataset so anything post-2020 doesn't meet the cut-off. From importing my own exported ratings I was able to get import 74% of my ratings.
If you wish to help me with my project please message me and I will send you my email address which you can attach the xml file to. The xml file can be created by going to: https://www.criticker.com/ratings/ and selecting xml in the bottom left corner.
For anyone curious as to how the code is imported:
Code: Select all
const parsedJSON = new XMLParser().parse(fileReader.result as string).recentratings.film;
processReviews(parsedJSON);
const processReviews = (parsedJSON: [{ [key: string]: string | number }]): void => {
const UID = userState.UID;
const processedReviews = parsedJSON.map((review) => {
const imdb_title_id = review.imdbid.toString().slice(2).replace(/^0+/, '');
const processedReview = {
createdAt: new Date(review.reviewdate).getTime(),
imdb_title_id: Number(imdb_title_id),
rating: review.rating,
UID
} as IReview;
if (review.quote !== '') processedReview.review = review.quote as string;
return processedReview;
});
uploadReviews(processedReviews);
};