kylon / Sharedown

Electron application to download Sharepoint videos (especially meant for students)
GNU General Public License v3.0
349 stars 40 forks source link

new versions don't work #60

Closed ppfans closed 1 year ago

ppfans commented 1 year ago

I used Sharedown for a long time. Thanks to Kylon of the great job! Recently I found it not work any more after the version of 5.0.2. I tried version 5.1, 5.2.1, 5.2.2, and they do not jump back to Sharedown for download. While version 5.0.2 and before still work.

Log:

startDownload: start

startDownload: valid data: true

runPuppeteerGetVideoData: goto https://mdigital-my.sharepoint.com/***

_sharepointLogin: start login procedure

_waitForVideoPlayer: ignore:
Execution context was destroyed, most likely because of a navigation.

_waitForVideoPlayer: ignore:
Execution context was destroyed, most likely because of a navigation.

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!

_waitForVideoPlayer: ignore:
JSHandles can be evaluated only in the context they were created!
kylon commented 1 year ago

so, 5.0.2 is working, 5.1.0 is not working?

ppfans commented 1 year ago

Sorry, I'm confused. It seems 5.22 work today. I tested every version when lauched from 5.1 to 5.22 to see if it fixed. non of these worked, but 5.02 always working. Every time browser will idle on the page of "Player can't load". But today 5.22 worked! I will continue do the test and let you know if there is any progress.

Elvino00 commented 1 year ago

Sorry, I'm confused. It seems 5.22 work today. I tested every version when lauched from 5.1 to 5.22 to see if it fixed. non of these worked, but 5.02 always working. Every time browser will idle on the page of "Player can't load". But today 5.22 worked! I will continue do the test and let you know if there is any progress.

It's normal for the browser to say "player can't load" but the downloads actually are going on.

kylon commented 1 year ago

yes, this is how it works

ppfans commented 1 year ago

Yes, I know. But it will stay on the page of "player can't load" permanantly. I set the timeout to 99999, because I need additional time from input and verification for sharepoint. When I close the web page, the software is still circle, it will not prompt error as usual. But the version 5.02 is normal. I tried several times, and this issue still happened for verision from 5.1 to 5.22.

kylon commented 1 year ago

you can set 0 to disable the timeout

the only big change in 5.1 is puppeteer upgrade from 17 to 19, if 5.1 is the first one that breaks for you, then this sounds like a puppeteer regression

Sharedownt.zip this is 5.0.2 with puppeteer 18.0

ppfans commented 1 year ago

Sorry, there is no executive file in it. I can only run the portable version.

Elvino00 commented 1 year ago

Sorry, there is no executive file in it. I can only run the portable version.

1) Extract the content of the archive 2) Enter in the folder created after the extraction and open a terminal 3) write "npm i" or "yarn install" 4) write "npm start" (in case it didn't work use "npm run" ) if you used "npm i" or "yarn run" (or "yarn start", i don't remember) if you used "yarn install"

ppfans commented 1 year ago

both versions do not work now. when I use build in chromium, it shows "Something went wrong Either your current settings or your browser is not supported or outdated. Use a different browser and try again." If I change to chrome. It will start play video, but cannot download.

kylon commented 1 year ago

weird message, i will update chromium and post to test if it gets stuck press f5 to reload the page and it should start, something when 2fa or too many redirects happens

kylon commented 1 year ago

Sharedownt.zip

try with this

same instruction: https://github.com/kylon/Sharedown/issues/60#issuecomment-1367184483

StranaPatata commented 1 year ago

Sharedownt.zip

try with this

same instruction: #60 (comment)

I had the same issue, "Either your current settings or your browser is not supported or outdated. Use a different browser and try again". I've tried using a different browser, Chrome 109.0.5414.120 and Firefox 108.0.2, the video player starts but never goes back to sharedown (latest release).

Now I've downloaded your Sharedownt.zip, built it and when I paste a sharedown link and press "start download", it shows "failed to find chrome executable".

I've used the same settings with the same release, but in November/december worked flawlessly, now it give errors about using a different browser.

kylon commented 1 year ago

build for what os? sounds like partial build

where do you see that message?

StranaPatata commented 1 year ago

OS is Windows 10 22H2. Message appears after doing:

Click "Add Sharepoint URLs" Paste link(s) in the white box Click "Save" Click "Start download"

As soon as I start the download, this error appears about puppeteer. Screenshot 2023-02-15 220757

kylon commented 1 year ago

sorry i mean the not supported browser message

are you using a system wide install? C:\Program Files if yes, that error has been fixed in main, if no, the build failed to find/include puppeteer

StranaPatata commented 1 year ago

The "Not supported browser or settings" error message appears after clicking "Start download". Sharedown opens chromium and does everything according to automation (writing login details, clicking some buttons and so on), when the sharepoint webpage loads with the video player, it loads for a bit and then the player is covered by the error.

Screenshot 2023-02-16 121526

After this, chromium self-closes because of "Navigation timeout of 2000ms exceeded".

This happens using the main (with the updated preload.js published yesterday) and launching it with the terminal using npm install and npm start. The software USUALLY fails to grab the stream and download it, sadly. I've tried with different links from different classes, also with links of known streams that in the past I was able to download so in my opinion, it's not related to the uploader's settings.

For each link, if I try a couple times, it starts the download even after showing the "Not supported browser or settings" error message, but this means that the queue is basically broken because even if I add different links, for every video I need to be present and manually click a couple of times the "start download" button, because chromium self closes and throws the error.

So the issue is not related to the specific link I input into Sharedown, because the same video that gives me errors, eventually starts downloading.

Here is the log: `startDownload: start

startDownload: valid data: true

runPuppeteerGetVideoData: goto https://.......[link to actual stream]

_sharepointLogin: start login procedure

_sharepointLogin: has login data

_sharepointLogin: has auto-login

_waitForVideoPlayer: ignore: Execution context was destroyed, most likely because of a navigation.

_waitForVideoPlayer: ignore: Execution context was destroyed, most likely because of a navigation.

runPuppeteerGetVideoData: error Navigation timeout of 20000 ms exceeded

downloadVideo: has vdata: false

startDownload: failed undefined`

This is the log for when it fails to grab the stream.

If I change the .exe from built-in chromium to my personal installation of Chrome, the recording actually plays and I can even stop it, speed it or toggle subtitles, but after that it closes automatically because of the timeout, without grabbing the stream.

Hopefully I've written enough information.

kylon commented 1 year ago

ok ok, i think i will add a warning on download start about this (~finally~)

builtin chromium cannot play videos, the something went wrong, etc.., is telling you that sharedown doesn't care about this and never will, ignore all player errors

now the actual issue

log is clean, i think increasing or disabling (probably better) the timeout is what you need just 2023-02-16-143527_221x85_scrot and save

this should solve your issue

StranaPatata commented 1 year ago

Thanks a lot, first increasing the browser timeout and then disabling it seems to have fixed the issue. I wonder what MS changed that now Sharedown requires more time to obtain the stream link to download.. Anyway thanks again, I can finally finish to archive all the meetings that were left.

ppfans commented 1 year ago

The something went wrong.. is not an issue. If it works, Sharedown will ignore this page, just like Player can't load... I do not have admin access to install the package, so I cannot test that patch. Recently I found Sharedown cannot work randomly (at least 90% fail). It's not related to different version. But when download start successfully, it can complete all download request in download queue without any issue. Maybe it caused by my network environment, if there is no one have similar issue. The only thing I want to improve is, when I close chromium window, version 5.22 will not prompt an error. It just circling and seems busy. While 5.02 will prompt an error, and I can restart the download and try again directly (Portable version have long launch time).

kylon commented 1 year ago

i ll look into the close bug

portable version extracts everything everytime is run, thats what requires time, need to check if there are other options

kylon commented 1 year ago

closing this since now OT and new build is out the other 2 issues mentioned have been solved, switched to zip format and no crash on stop

if you still have issues, please open a new one for latest release thanks