qnapi icon indicating copy to clipboard operation
qnapi copied to clipboard

Support for napiprojekt uri

Open skoruppa opened this issue 8 years ago • 12 comments

It would be nice if qnapi could support napiprojekt uris that can be found on its website. Like

napiprojekt:1ff7b3eaf2f16989af8290e5b7b8a1cf

More examples can be found on "movie subtitles page" like http://www.napiprojekt.pl/napisy1,1,1-dla-20943-Sintel-(2010) . This future is pretty useful when qnapi can't find subtitles for your version of movie but you still want to try with other versions anyway

skoruppa avatar Nov 19 '15 10:11 skoruppa

+1

eremitis avatar Dec 26 '15 16:12 eremitis

+1

tasiek avatar Feb 07 '16 12:02 tasiek

Very good idea. It happens to me often, that QNapi won't find matching subtitles. However when you search subtitles manually on napiprojekt catalogue, it's often possible to find subtitles just by looking at FPS and video duration.

It forced me to keep both qnapi and napiprojekt programs installed, because qnapi alone won't open napiprojekt URIs.

stil avatar Jul 04 '16 00:07 stil

This is a must have for Polish users. Napiprojekt has the best Polish subtitles database far better than OpenSubtitles. I haven't yet checked how QNapi finds the right subtitles, but it seems like it video duration isn't a major factor, and because of that it leaves out tons of subtitles. I might work on adding uri support myself. Don't know when yet, but it'd be my little hobby project.

@krzemin Have you maybe tried to implement it already?

Neurovert avatar Oct 02 '17 20:10 Neurovert

@Vioner nope, I didn't try implementing that. The main problem here is that Napiprojekt has no open API for programmers. Currently QNapi uses legacy method: compute md5 checksum of first 10MB of file and then fetch .zip file with subtitles. I agree it would be nice to have alternative search/download methods like uri, looking by filename, video metadata (duration, resolution and so on), but without proper API support on the remote service this is hardly possible.

I know that Napiprojekt official application uses some API, but I don't have time to reverse engineer that. If you can work it out and provide description of how to download .zip file (or subtitles itself) basing on uri or video metadata, it would be awesome. Working source code (in any language, not necessarily integrated with QNapi) would be excellent.

krzemin avatar Oct 02 '17 21:10 krzemin

@krzemin Right... I didn't knew their API is closed. I'll definitely analyze the options and see what I can do about it. I'll also probably reach out to Napiprojekt maintainer. Thanks for the quick reply.

Neurovert avatar Oct 02 '17 21:10 Neurovert

Request format:

curl -X POST -F mode=17 -F client=NapiProjekt -F client_ver=2.2.0.2399 -F user_nick= -F user_password= -F downloaded_subtitles_id=e35b971b32d0f8872d4d906d319877e3 -F downloaded_subtitles_lang=PL -F the=end http://napiprojekt.pl/api/api-napiprojekt3.php
  • mode - is set to 17, I'm not sure what does it mean.
  • client - it's set to NapiProjekt
  • client_ver - it's set to 2.2.0.2399
  • both user_nick and user_password can be empty
  • downloaded_subtitles_id most interesting field, this should be set to NapiProjekt URI.
  • downloaded_subtitles_lang we usually want it to PL

Response is formatted as XML:

<?xml version="1.0"?>
<result>
    <status>success</status>
    <subtitles>
        <id>e35b971b32d0f8872d4d906d319877e3</id>
        <subs_hash>77f45a586dd4814ed4344fa4f40852eb</subs_hash>
        <filesize>17163</filesize>
        <author>Danuta Dowjat</author>
        <uploader>boro259</uploader>
        <upload_date>2016-10-31 14:37:44</upload_date>
        <content>
            <![CDATA[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]]>
        </content>
    </subtitles>
    <additional_message>
        <location>http://www.napiprojekt.pl/messages/wsparcie2.php?june</location>
        <runs>5</runs>
        <installed_after>15</installed_after>
    </additional_message>
    <update_info>
        <version_number>2.2.0.2399</version_number>
        <download_url>http://napiprojekt.pl/download/</download_url>
        <latest_changes>&#xD; NapiProjekt 2.2.0.2399 (2013-09-30)&#xD; - Mo&#x17C;liwo&#x15B;&#x107; zdefiniowania kilku profil&#xF3;w pobieranych napis&#xF3;w &#xD; - Program odporny na b&#x142;&#x119;dne nazwy folder&#xF3;w (zawieraj&#x105;ce np. niedopuszczone przez Windows znaki ':')&#xD; - Instalator programu dodaje wyj&#x105;tek do zapory Windows (naprawa komunikacji z serwerem w niekt&#xF3;rych przypadkach)&#xD; - Poprawione wyszukiwanie napis&#xF3;w na dysku&#xD; &#xD; &#xD; NapiProjekt 2.1.1.2310 (2013-06-13)&#xD; - Opcja automatycznego wyszukwiania napis&#xF3;w po uruchomieniu 'kolejki oczekuj&#x105;cych'&#xD; - Poprawiono b&#x142;&#x105;d dotycz&#x105;cy znikania okienka 'kolejka oczekuj&#x105;cych'&#xD; - Wersja portable (plik ustawienia.ini nalezy przenie&#x15B;&#x107; do katalogu z programem)&#xD; - Likiwidacja zg&#x142;oszonych b&#x142;&#x119;d&#xF3;w&#xD; - Program nie sprawdza braku menu 'znajd&#x17A; i dopasuj napisy' dla plik&#xF3;w '*.oga, *.ogg, *.spx, *.ram, *.ogx, *.ra'&#xD; - Usuni&#x119;to zg&#x142;oszone b&#x142;&#x119;dy&#xD; &#xD;
        </latest_changes>
    </update_info>
    <response_time>0.008 s.</response_time>
</result>

result/subtitles/content is Base64 encoded 7-Zip archive. Password encrypted. Any idea what is the password?

stil avatar Oct 02 '17 22:10 stil

OK, password is the same as in napiprojektdownloadengine.cpp#L42.

stil avatar Oct 02 '17 22:10 stil

Since this issue is pretty old and we watch movies all the time, I've created add-ons for Firefox and Chrome to help.

They allow you to quickly download subtitles from NapiProjekt.pl catalog without the need of installing programs on your computer. It just works.

Links https://addons.mozilla.org/pl/firefox/addon/napi/ https://chrome.google.com/webstore/detail/napihelper/jebnegelidgapoglopbhcmadcjhgegic

:poland: Dla wszystkich którzy korzystają z katalogu napiprojekt ale nie chcą lub nie mogą zainstalować ich aplikacji na komputerze, wrzuciłem dodatki do Firefoxa i Chrome. Od teraz możecie pobierać napisy z katalogu bezpośrednio w przeglądarce.

stil avatar Oct 04 '17 22:10 stil

@stil Works great! Thanks!

Neurovert avatar Oct 04 '17 23:10 Neurovert

Hi there, sorry for digging this old issue up, but it seems that the problem is still relevant (for me at least :wink: ) and the Chrome add-on doesn't work anymore ( https://api.napi.site/unpackSubs throws error 200), so I've written a crude bash script for people who might also find this issue: https://github.com/krzmazur1/My_useful_bash_scripts/blob/master/NapiprojektSubtitlesDownloader.sh

krzmaz avatar May 07 '19 20:05 krzmaz

Since this issue is pretty old and we watch movies all the time, I've created add-ons for Firefox and Chrome to help.

They allow you to quickly download subtitles from NapiProjekt.pl catalog without the need of installing programs on your computer. It just works.

Links https://addons.mozilla.org/pl/firefox/addon/napi/ https://chrome.google.com/webstore/detail/napihelper/jebnegelidgapoglopbhcmadcjhgegic

Dla wszystkich którzy korzystają z katalogu napiprojekt ale nie chcą lub nie mogą zainstalować ich aplikacji na komputerze, wrzuciłem dodatki do Firefoxa i Chrome. Od teraz możecie pobierać napisy z katalogu bezpośrednio w przeglądarce.

@still Od jakiegoś czasu Twoja wtyczka nie działa (https://api.napi.site/unpackSubs nie odpowiada). Chciałbyś udostępnić kod swojego dodatku abyśmy mogli go dostosować? Wtyczka była zdecydowanie najwygodniejsza ;)

skoruppa avatar Jan 25 '21 20:01 skoruppa