Giter Site home page Giter Site logo

amckee / podtube Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aquacash5/podtube

11.0 11.0 2.0 1.31 MB

This is a fork of podtube.aquacash5.com's python application for converting Youtube playlists and channels into podcast RSS feeds. This fork adds the same functionality to Rumble and Bitchute.

License: BSD 2-Clause "Simplified" License

Python 91.38% CSS 7.45% Dockerfile 0.58% Shell 0.59%

podtube's People

Contributors

actions-user avatar amckee avatar aquacash5 avatar hbmartin avatar yuriimaiboroda avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

podtube's Issues

Rumble Broken

Just noticed that rumble channels are no longer pulling:

2022-12-09 17:36:21,635 Got channel: <CHANNELNAME>
2022-12-09 17:36:21,635 Handling Rumble URL: https://rumble.com/c/<CHANNELNAME>
2022-12-09 17:36:21,635 Channel: <CHANNELNAME>
2022-12-09 17:36:21,635 Rumble URL: https://rumble.com/c/<CHANNELNAME>
2022-12-09 17:36:21,638 Starting new HTTPS connection (1): rumble.com:443
2022-12-09 17:36:21,732 https://rumble.com:443 "GET /c/<CHANNELNAME> HTTP/1.1" 200 None
2022-12-09 17:36:21,817 Uncaught exception GET /rumble/channel/<CHANNELNAME> (<REMOTEIP>)
HTTPServerRequest(protocol='http', host='<SERVERNAME>:15000', method='GET', uri='/rumble/channel/<CHANNELNAME>', version='HTTP/1.1', remote_ip='<REMOTEIP>')
Traceback (most recent call last):
  File "/usr/local/lib64/python3.6/site-packages/tornado/web.py", line 1702, in _execute
    result = method(*self.path_args, **self.path_kwargs)
  File "/var/www/PodTube/rumble.py", line 23, in get
    feed = self.generate_rss( channel )
  File "/var/www/PodTube/rumble.py", line 43, in generate_rss
    feed.title( bs.find("h1", "listing-header--title").text )
AttributeError: 'NoneType' object has no attribute 'text'
2022-12-09 17:36:21,817 500 GET /rumble/channel/<CHANNELNAME> (<REMOTEIP) 183.03ms

Rumble User Support

Some Rumble accounts are under the URL of rumble.com/user/ which appears to be able to combine multiple Rumble accounts in a single feed.

Would be nice to support those as well.

add more architectures to docker image

Hi i'm currently working on this project https://github.com/madiele/vod2pod-rss
It's a service that takes any rss or youtube/twitch channel and rewrites it's enclosure to a live transcoded mp3 version of it so that you can play any youtube and twitch channels like if they were proper podcast in any client, my project already supports youtube but only the basic atom feed limited to 15 elements. I tried this project and it already works out of the box with mine and it's pretty awesome, I would like to add this service to the docker-compose as an optional dependency if that's cool with you, but since my images support armv7 and arm64 too I need them to be available, I can write you a PR with the required github actions if you want, or I can also do a fork and maintain my own version just to run the actions

YouTube channel ID's being used instead of names

It seems youtube changed their API data returns, the 'snippet' object no longer contains the 'channelTitle' string:

HTTPServerRequest(protocol='http', host='[hostname]:15000', method='GET', uri='/youtube/channel/UCpQu57KgT7gOoLCAu3FFQsA', version='HTTP/1.1', remote_ip='[ip_address]')
Traceback (most recent call last):
  File "/usr/local/lib64/python3.6/site-packages/tornado/web.py", line 1704, in _execute
    result = await result
  File "/usr/local/lib64/python3.6/site-packages/tornado/gen.py", line 216, in wrapper
    result = ctx_run(func, *args, **kwargs)
  File "/usr/local/lib64/python3.6/site-packages/tornado/gen.py", line 162, in _fake_ctx_run
    return f(*args, **kw)
  File "/var/www/PodTube/youtube.py", line 232, in get
    snippet['channelTitle']
KeyError: 'channelTitle'

A temporary work around has been implemented to use the channel ID instead:
ab98cea

YouTube: Allow fetching more than 50 items

Hi i've got an issue on my repo about raising the item limit from 50 (the limit for a single YouTube API call)

madiele/vod2pod-rss#90

I've given a look at the code and it seems there is already some kinda of logic for it but it was manually disabled with this line response = {'nextPageToken': ''} before the loop for both channels and playlist

I guess maybe to prevent fetching 3000+ videos accidentally on big channels, do you thing is possible to re-implement the feature back-in some way?

If you want I can open a PR myself too, just tell me what is your preferred solution and I'll code something as soon as I have a spare weekend✌️

Youtube downloads are broken

I'm pretty sure that was me. Gonna fix it, but kinda want to just focus on replacing the API method with a scraping method 'cause Youtube API's are a PITA.

We will see, but I know it's broken at the moment.

Wrong architecture built for AMD64

ARM64 and ARMv7 images are unaffected.

Image from this commit:
6f845d0

Gives:

Preparing to run: '/bin/sh -c python /opt/podtube.py' as root
Error: UnhandledIoError(Os { code: 8, kind: Uncategorized, message: "Exec format error" })

Rolling back to ftawesome/podtube:2023.04.19.6 for AMD64 works for now.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.