Pick a random video for bypass captcha

pick a random video from the 1000 first rows of the channel_videos table
in order to bypass the captcha more efficiently
This commit is contained in:
Émilien Devos 2021-06-25 17:37:37 +02:00 committed by GitHub
parent 5a8825d016
commit ce68d09d26
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2,7 +2,11 @@ class Invidious::Jobs::BypassCaptchaJob < Invidious::Jobs::BaseJob
def begin def begin
loop do loop do
begin begin
{"/watch?v=zj82_v2R6ts&gl=US&hl=en&has_verified=1&bpctr=9999999999", produce_channel_videos_url(ucid: "UCK87Lox575O_HCHBWaBSyGA")}.each do |path| random_video = PG_DB.query_one?("select id, ucid from (select id, ucid from channel_videos limit 1000) as s ORDER BY RANDOM() LIMIT 1", as: {id: String, ucid: String})
if !random_video
random_video = {id: "zj82_v2R6ts", ucid: "UCK87Lox575O_HCHBWaBSyGA"}
end
{"/watch?v=#{random_video["id"]}&gl=US&hl=en&has_verified=1&bpctr=9999999999", produce_channel_videos_url(ucid: random_video["ucid"])}.each do |path|
response = YT_POOL.client &.get(path) response = YT_POOL.client &.get(path)
if response.body.includes?("To continue with your YouTube experience, please fill out the form below.") if response.body.includes?("To continue with your YouTube experience, please fill out the form below.")
html = XML.parse_html(response.body) html = XML.parse_html(response.body)