haarts / getme Goto Github PK
View Code? Open in Web Editor NEWSimple way to find media torrents.
License: GNU General Public License v3.0
Simple way to find media torrents.
License: GNU General Public License v3.0
Kickass returns a 404.
TorrentCD returns an empty response.
Handle these errors in the respective search engine and hide them from the app.
Only in debug mode of course.
What did I plan for that field anyway?
That means that the lists are under the wrong header.
I'd imagine this taking a long time. But ideally I want to be able to track movies too.
Currently when one of the sources errors out (always Trakt) the entire program comes to a halt. We don't want that. Make it so that it handles the error and continues.
Line 202 in c4e083e
This rarely returns anything useful and if you're such a fan that you want to see the directors commentary you can search for it yourself.
Some torrents we'll never be able to download (for example the first episode of a series which started in 1996). There is no need to keep trying it. Be gentle with all the webservices we're using an progressively back off trying to fetch these.
Now I've assumed $HOME/.config/getme
as the reasonable location for a config file.
But I imagine that to be quite different on a Windows machine.
What is the sane location for a config file on Windows?
This means that any other binary wanting to use the 'sources' package now contains the 'store' package too. That seems a violation of concerns.
It's tricky to envision the removal of 'store'.
Removing it would mean moving the UpdateSeasonsAndEpisodes
elsewhere; where should it be moved to?
And the Source
interface needs to change the function signature of Seasons
. The question then is how to pass down the original source information.
Compare what's in the Store and what is on disk. Remove everything not in Store but on disk nonetheless.
Services go down/become unresponsive. There are others. Try these before giving up entirely.
Adding a show which has been previously added should error out.
Updating media from sources and downloading pending torrents.
...................................Searching for 1 torrents.
Downloading 0 torrents
Pending: foobar season 11 episode 7
Searching for 4 torrents.....
Downloading 0 torrents
Pending: baz season 0
Pending: baz season 1 episode 1
Pending: baz season 1 episode 2
Pending: baz season 1 episode 3
....................Searching for 10 torrents..........................................
Downloading 0 torrents
Pending: bar season 1 episode 1
Pending: bar season 1 episode 2
Pending: bar season 1 episode 3
Pending: bar season 1 episode 4
Pending: bar season 1 episode 5
Pending: bar season 1 episode 6
..Searching for 6 torrents.............
Downloading 0 torrents
Pending: tofu season 0
Pending: tofu season 4 episode 12
Pending: tofu season 4 episode 13
Pending: tofu season 4 episode 14
Pending: tofu season 4 episode 15
Pending: tofu season 4 episode 16
.............
The Search
function:
Line 124 in 028737a
I'd love to split the software up in two distinct parts. A server and a client. All HTTP.
I think it is rather easy. The ui
package is probably a good place to start for the server part. Every thing in main
is client except the config part which has to move anyway.
The client is to be written brand new.
The added value for the end user is the fact that multiple UI can be made. CLI is not for everyone and I expect even less so for Windows users.
They really don't belong in the sources package.
Picking two random episodes (4 and 5) was bound to run into trouble.
Make it more robust.
https://github.com/haarts/getme/blob/master/store/show.go#L210
Redirects and what not tend to mess with it.
Reading a torrent file should be sufficient. Something like this could help: https://github.com/jackpal/Taipei-Torrent
Now I try to be clever by generating snippets and picking a random one at the start. Instead I should just use S00E00 first, then 0x00 and then year-month-day.
Link with #33
It's rather pointless to print 2784 pending items.
Let's check if the first hit actually has 'season' in the filename.
The current tool popular_shows.py
requires two files in /tmp
called part1.html
and part2.html
. These files should contain a subtree of the source IMDB page. This is because Beautiful Soup was unable to parse the original. This is a hassle and should be fixed.
Ideally you'd just run the Python script which does:
shows
list./getme -a -D 'some string'
doesn't really search for some string
but searches for an empty string.
I've had it with crappy searches and unintelligible torrent names.
I want a library which will take a string which supposedly represent a show name and map that to a canonical show name. The latter can come from one of the services i use like tvmaze.
Test this with a whole bunch of torrents.
When adding the same show twice the ui just prints:
Looking up seasons and episodes for 'Pioneer One'
and exits.
It should notify the user he's adding the same show a second time.
Something like
$ set VERSION (git describe --tags) ;and go build -ldflags="-X main.versionNumber=$VERSION" cmd/getme/main.go
Some series run for ever. The user is probably only interested in the last 50 or so. So why not download these first. On subsequent update runs get 50 more etc etc. Eg: Download the 50 latest episodes.
Its time to add start up flags. I don't think it's possible to add git like sub commands which is what I initially wanted. No matter, flags
will do just fine.
Add: -a, --add string
Daemon: -d, --daemon nil
From Season: -fs, --from-season int
From Episode: -fe, --from-episode int (must be used in combo with -fs)
...
Somehow never more than 1 snippet is stored even when the one stored snippet is crap (low score).
As in 'Italian'.
Currently the alternatives are displayed as a long list. With the matches from the different sources just appended to each other. Dog ugly.
I think the tabWriter
could help us out. The idea is to have a column for each source
(Trakt, TvRage, etc). Under that list the alternatives. Mind that the first entry of the second column has the index of len(firstColumn)+1
.
This has been superseded by the snippets.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.