eloquence / freeyourstuff.cc

freeyourstuff.cc - universal content liberation
Creative Commons Zero v1.0 Universal
79 stars 4 forks source link

Quora seems to have broken again - tells me to log into Quora #129

Closed VinceG3 closed 4 years ago

VinceG3 commented 4 years ago

The CLI gives a helpful error message:

Unexpected error:
Error: Evaluation failed: TypeError: Cannot read property 'click' of undefined
at awaitInitialAJAXRequests (/home/vince/src/freeyourstuff.cc/extension/src/plugins/quora/index.js:120:35)
at Object.retrieveAnswers [as answers] (/home/vince/src/freeyourstuff.cc/extension/src/plugins/quora/index.js:54:11)
at <anonymous>:2:56
at ExecutionContext.evaluateHandle (/home/vince/src/freeyourstuff.cc/cli/node_modules/puppeteer/lib/ExecutionContext.js:70:13)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:189:7)

The extension just tells me to log into Quora, even while I'm sitting right on my profile page. Trying to run the cli tests just gives the same above error. My profile page is https://www.quora.com/profile/Vincent-Guidry-1

Thanks for all your hard work!

eloquence commented 4 years ago

Thank you for the kind words and sorry for the breakage. Unfortunately I'm currently unable to reproduce this issue in the extension; it detects login and then lets me download my answers. Quora often runs small-scale experiments so it's possible that you've been assigned to an experimental experience I'm not in. :/

The login check is pretty simple - it checks for the presence of an item with the classes '.MoreNavItem.SidebarNavItem.SiteHeaderNavItem.HoverMenu. That's supposed to select the user menu (the one at the top, with your avatar on it) when you're logged in.

If you check $('.MoreNavItem.SidebarNavItem.SiteHeaderNavItem.HoverMenu') in the developer console in Chrome/Chromium, or select the item using the inspector, does it show you the presence of those CSS classes?

VinceG3 commented 4 years ago

I just get null. The class on the element with my avatar is Box-sc-9env3-0 Img__Image-xy9oyj-0 gAIgZz

eloquence commented 4 years ago

Thanks for the additional detail! I'm still not able to reproduce this with my account - it always detects me correctly as being logged in. Even if I disable JavaScript completely, $('.MoreNavItem.SidebarNavItem.SiteHeaderNavItem.HoverMenu') always gives me an element with those class specifications. If you have time to poke a bit further, a screenshot like the below would be super helpful to drill into this -- this is with the dev tools open, using the inspector to highlight the element for the user menu. You can send it to me at eloquence@gmail.com.

Screenshot from 2020-03-05 23-50-13

If you don't have time, I'll poke a bit more using a new test account.

eloquence commented 4 years ago

This should be resolved in version 0.5.8 - do you still experience this issue?

VinceG3 commented 4 years ago

Nope! Thanks again!