Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Downloading with several IP and terminals possible? #6919

Open
ForxBase opened this issue Feb 2, 2025 · 6 comments
Open

Downloading with several IP and terminals possible? #6919

ForxBase opened this issue Feb 2, 2025 · 6 comments

Comments

@ForxBase
Copy link

ForxBase commented Feb 2, 2025

Since it's only possible to download so much from websites like Instagram with one IP and several terminals with gallery-dl openened to download will make Instagram ban your account or block the IP, same with Twitter, Youtube, etc. I'm wondering if it's possible to download from the same PC over multiple terminal windows with different IPs? Each terminal with its own gallery-dl over VPN IP running simultaneously? That would be a lot cheaper than buying several budget PC's only for download with gallery-dl. Is something like this possible or build-in?

@Hrxn
Copy link
Contributor

Hrxn commented Feb 2, 2025

The part with multiple VPNs with different IP addresses would be the problem here.
I don't think I've ever heard of a solution like this. Even ignoring the issue with any non-residential IP connection much more likely to trigger detection.

@ForxBase
Copy link
Author

ForxBase commented Feb 2, 2025

The part with multiple VPNs with different IP addresses would be the problem here. I don't think I've ever heard of a solution like this. Even ignoring the issue with any non-residential IP connection much more likely to trigger detection.

do you have any setup like this to download a lot in one go? right now I have to download one profile, wait for it to finish, and then next, etc. it's very time consuming. having 5-10 profiles get downloaded simultaneously would be much better. for the IP addresses, you can rent or buy new addresses from some VPN providers that are not been used or flagged before.

@mikf
Copy link
Owner

mikf commented Feb 3, 2025

Use an input file to download them one after the other automatically.
Write a simple script and spawn multiple gallery-dl processes at once.

@ForxBase
Copy link
Author

ForxBase commented Feb 6, 2025

Use an input file to download them one after the other automatically. Write a simple script and spawn multiple gallery-dl processes at once.

Then they would all download over the same IP and sensitive sites like Instagram or Twitter would log me out again. One new rented IP from a VPN provider for example per powershell tab would make the downloads 10x faster. In other words I could download 10 times more profiles compared to waiting for one single to finsh.

@SpiffyChatterbox
Copy link

SpiffyChatterbox commented Feb 8, 2025

Maybe combine mikf's suggestion with proxy switch?

Step 1 - setup each IP/VPN box with a listening proxy.
Step 2 - Split your URL list into different files. e.g. url-list1.txt, url-list2.txt.
Step 3 - Have your script run:

gallery-dl -i url-list1.txt --proxy socks5h://proxy1.myhost.com
gallery-dl -i url-list2.txt --proxy socks5h://proxy2.myhost.com
gallery-dl -i url-list3.txt --proxy socks5h://proxy3.myhost.com

@Twi-Hard
Copy link

Twi-Hard commented Feb 8, 2025

You can ignore this suggestion if you don't know anything about docker. This could take a lot of work to set up properly.

What I do is:

  • create a Ubuntu docker image with gallery-dl and yt-dlp installed
  • set up several VPN docker containers, each with a different country/city. Each VPN I've used have had docker images specifically for that VPN but you can probably use the OpenVPN image if your VPN doesn't have its own

For example, if your VPN provider was NordVPN you could use a command like this to launch a VPN container (replace $nord_token with your token if you use NordVPN):

docker run --rm -ti -d --cap-add=NET_ADMIN --cap-add=NET_RAW -e CONNECT='us phoenix' -e TOKEN=$nord_token -e TECHNOLOGY=NordLynx --name=vpn-nord-phoenix ghcr.io/bubuntux/nordvpn"

Then in the docker run command for the container with gallery-dl installed you can use the --network container:{vpn_container_name} argument to make that gallery-dl container use the VPN container as the network so all traffic gets sent through it.

You can use a script to queue the input URLs evenly between the different gallery-dl containers (my script doesn't do this anymore so I can't help you there)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants