user11676469
user11676469

Reputation:

Grab auto Download Links Using requests

I'm Trying to grab auto started direct download Link from Yourupload using Bs4

the direct download Link is auto generated every time, the direct download Link also start automatically after 5 seconds, i want to get the direct download Link and store it in "Link.txt" Files

import requests
import bs4

req = requests.get('https://www.yourupload.com/download?file=2573285', stream = True)

req = bs4.BeautifulSoup(req.text,'lxml')

print(req)

Upvotes: 0

Views: 1034

Answers (1)

Well, actually the site is running a JavaScript code to handle the redirect to the final-destination url to stream the download with just token validation.

Now we will be more wolfs and get through it.

We will send a GET request firstly with maintaining the session via requests.Session() to maintain the session object and again send GET request to download the Video :).

Which means that you currently have the final url, you can do whatever, to download it now or later.

import requests
from bs4 import BeautifulSoup


def Main():
    main = "https://www.yourupload.com/download?file=2573285"
    with requests.Session() as req:
        r = req.get(main)
        soup = BeautifulSoup(r.text, 'html.parser')
        token = soup.findAll("script")[2].text.split("'")[1][-4:]
        headers = {
            'Referer': main
        }
        r = req.get(
            f"https://www.yourupload.com/download?file=2573285&sendFile=true&token={token}", stream=True, headers=headers)
        print(f"Downloading From {r.url}")
        name = r.headers.get("Content-Disposition").split('"')[1]
        with open(name, 'wb') as f:
            for chunk in r.iter_content(chunk_size=1024*1024):
                if chunk:
                    f.write(chunk)
            print(f"File {name} Saved.")


Main()

Output:

Downloading From https://s205.vidcache.net:8166/play/a202003090La0xSot1Kl/okanime-2107-HD-19_99?&attach=okanime-2107-HD-19_99.mp4
File okanime-2107-HD-19_99.mp4 Saved.

Confirmation By Size: As you can see 250M

enter image description here

Notice that the download link is one time callable as the token is only validated one-time by the back-end.

Upvotes: 1

Related Questions