Skip to content
This repository has been archived by the owner on Mar 9, 2023. It is now read-only.

friendrated.pl returns only books I have already read, gets ratings wrong #41

Open
mcleanle opened this issue Dec 18, 2022 · 6 comments

Comments

@mcleanle
Copy link

I just ran friendrated.pl with no arguments, and it returned a list of books in common with my friends/followers only -- specifically, books on my read shelf. In addition, it showed me some books as faved by my friends that they did not rate 4 or 5 stars.

Running with -x read in the arguments reduces the number of results by about 3/4 but still shows me books from my read shelf only (the -x <shelfname> argument is meant to exclude books from the specified shelf).

Running for one of my friends with the -u <their id> argument returns only books that she, I, and her followers have on our read shelves.

@andre-st
Copy link
Owner

andre-st commented Dec 18, 2022

Did you use the original Goodscrapes.pm library or the version you patched from the San Kumar issue? Because his patch actually affects scraping of rating data and is obsolete. I added other code later.

@mcleanle
Copy link
Author

That seems to have been at least part of it -- after reverting to the original code I'm now getting books I haven't read. There are still books appearing that were not rated 4 or 5 stars by the users listed in the results, though, and I'm still getting some books that are on my read shelf when using -x read.

@andre-st
Copy link
Owner

andre-st commented Dec 19, 2022

Okay, need to ask for some more background before:

  1. How do you verify that a user hasn't rated or rated differently? Do you look at Goodreads new book page or on at the (old) shelf page using "table view". Does the information on the shelf page match that on the new book page?

  2. If you use --userid or -u, then -x refers to the specified other(!) user's shelves, not yours. The option would exclude his Read-shelf. Or do you have this problem without --userid?
    You should also see a line like Loading #ID's books from "read" for exclusion... 123 books

@mcleanle
Copy link
Author

How do you verify that a user hasn't rated or rated differently? Do you look at Goodreads new book page or on at the (old) shelf page using "table view". Does the information on the shelf page match that on the new book page?

I happened to notice this first because the results were showing my sister as a "vote" on a book that I know she doesn't like. I went to the table view first and verified she had given it three stars. It's showing up as three stars on the book page too. I have since found a couple other examples of the same thing with other users.

If you use --userid or -u, then -x refers to the specified other(!) user's shelves, not yours. The option would exclude his Read-shelf. Or do you have this problem without --userid?

Yes, I was not using the -u arg in this case.

You should also see a line like Loading #ID's books from "read" for exclusion... 123 books

Yes, confirm I see this message each time.

@andre-st
Copy link
Owner

andre-st commented Dec 19, 2022

I just ran the friendrated.pl script and randomly checked the hits.
So far I haven't found any user who gave less than 4 or 5 stars, i.e. different on GR than in the report.
Also, I can't find a book from my read shelf in the report, except for a (different language) edition with its own book ID.
Otherwise, every now and then I find an unread book from my library in the report, which is ok (not in Read shelf).

I'll take a closer look at this.
You might also want to try again with a completely clean/unmodified, up-to-date clone of the GR toolbox.

If you like, it would be helpful if you tell me your Goodreads account so I can test against it.
Possibly by e-mail if you want it to remain private.
Ideally, you send the full title from your report ("Table: Books from ...") which includes your Goodreads user-id and some parameters too.

@mcleanle
Copy link
Author

I'll shoot you an email with the specifics. I did try it both with a build from the cloned repo on my local machine and a build straight from github (docker run -it --publish=8080:80 ghcr.io/andre-st/goodreads-toolbox) and got the same results both ways.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants