Qbittorrent: Add way to mass update announce url

Created on 17 Jan 2015  路  86Comments  路  Source: qbittorrent/qBittorrent

Unless I'm blind I don't see a way to do this in qB currently.

It is not possible to update the tracker url for more than one torrent at a time.

Say I'm using a tracker and the announce url changes (for instance a tracker that uses passkeys and the passkey changes). I have no way to update the 100 torrents I have seeding from the tracker. I would have to manually update each one. And if you're seeding a lot of torrents that'd get tedious. uT allows you to select all the torrents -> edit -> paste in the new announce url -> save and then it updates all the torrents' announce urls. For torrents with more than one announce url you could have the update field a textarea box that has each tracker on a new line.

I think this would be a great addition. (If this suggestion exists, sorry, I tried searching for it.)

Feature request

Most helpful comment

Some kind person has already done half the work here: https://bitbucket.org/rumanzo/qbtchangetracker/downloads/

https://github.com/rumanzo/qbtchangetracker/

Please incorporate this into qBittorrent. come on you smart people! you can do it!

All 86 comments

As I just now had to do all that stuff manually over a couple of hours, I put my vote for this feature.

If anyone have this "issue", you can always just move the affected .torrent files into a folder, and use Notepad++ on Windows. On Linux, I think Geany can do this. If not, you can cook up a small bash script using sed + bash in like 5 minutes.

If anyone have this "issue", you can always just move the affected .torrent files into a folder, and use Notepad++ on Windows. On Linux, I think Geany can do this. If not, you can cook up a small bash script using sed + bash in like 5 minutes.

.torrent files aren't text files. They contain binary data and you risk borking them if you treat them as text. Those files are bencoded: https://en.wikipedia.org/wiki/Bencode

I know, but trust me on this one mate. Unless you touch the binary part of it, and just use a text replacement, it wil work, 100%. I have been using this technique since the very first uTorrents and since torrenting started to rise. Never had an issue with it.

It's like having a pistol. You should not shoot yourself with it.
You can delete files on your PC. But you should not delete your system32 or "/" anyway.
And the list goes on.

If editing the bencode with Notepad++ worked for you, it's because you didn't change the length of the announce URL.

:+1: on this feature.

Would love to see this feature.

I would love to see a batch tracker editing feature, as manually going over every torrent is really messy, and time-consuming. For example: removing certain tracker URLs from a set of torrents would be really awesome. :+1:

http://i.imgur.com/XKYkRO7.png
Pic related?

Assumes you kept ALL the torrent files though, because you'll still need to add them back into qbittorent to push that change..

That wouldn't really work efficiently

Assumes you kept ALL the torrent files though, because you'll still need to add them back into qbittorent to push that change..

This would basically be the same as just re-downloading the torrents with the new passkey in them and adding them. Which is just as much work as manually changing the tracker URL

This would basically be the same as just re-downloading the torrents with the new passkey in them and adding them.

qbittorent maintains a local cache of active .torrent files (magnet links are saved aswell)
Under windows its found at %appdata%....\Local\qBittorrent\BT_backup
You can just drop all the .torrent files back into qbittorent to push a tracker merge correct?

But yes its probably not very efficient if the tracker merge doesn't add in the new trackers you specified in options, because then you would have to remove them all + re-add them and set path locations again which is too much effort.

for the love of gods. Please do implement this. I have over 200 torrents in need of an urgent announce URL update (mandatory pass key change). I am not enjoying this.

you can use transmission-edit in the meantime: http://linux.die.net/man/1/transmission-edit

@robdidop

How exactly do you accomplish this? I've edited all the torrents with transmission-edit in the BT_backup directory, but the .fastresume files still have the old announce urls, and qBittorrent doesn't seem to update from editing the torrent files alone.

The lack of this feature might one day make me change client, manually changing one tracker adress at a time gets old very quickly.

This would really come in handy for me right now. I'll gladly donate to the project if that helps.

@eb0lavirus We could edit the file itself, I will check if there is something I can do.
(Of course this would not be part of the official client/build, this would be just a small tool for all platforms that would allow the mass edit (like replace all) of announce URLs.)

I'm planning to write standalone util for this, as this task is relevant for me. Platform will be Kotlin (Java).

I added all my torrents to qbittorrent and now I have 300 broken torrents. Sigh, what a waste of time. Back to utorrent I guess. How can this program be so praised and missing such a basic functionality...

WOW i didnt even think that this "feature"? (basic really) isnt in here.
Now i have 100< torrents without tracker. Not gonna even bother going manually to each one.
Sorry but kinda basic feature.

Kinda basic that maybe one client can do at the moment?
I know, qBittorrent could have it - patches are most welcome. Just saying that it is (sadly) definitely cannot be found in every client.

@Balls0fSteel utorrent, Transmission and ruTorrent can. That's mostly all big clients.

Anyway. It doesn't seem as hard as I thought it'd be. Apparently you can just use Notepad++'s "Find in files & replace". Make backups of the torrents before just incase you make a mistake.

Well, editing with Notepad++ didn't work. It just didn't load any of the edited torrents even though I'm pretty sure I did it correctly.
Hmm, seems you gotta edit the resume files too.

Meh, editing resume files didn't help. qbittorent just ignores the edited torrents and there's no error messages in the log.

with linux
~/.local/share/data/qBittorrent/BT_backup

transmission-edit -a new *
transmission-edit -d old *
rpl -i  new old *

You may even use :

transmission-edit -r "old_tracker_substring" "new_tracker_substring" *

I'll take a look to see if it is complicated to make it work with the multi-selection, because there is already a table to edit trackers. It should be more a less adding an iteration over the multi-selection instead of simply taking the last selected torrent.

PS: Sadly it is too complicated to build, it would be much more simple if dependencies were packaged with qBittorrent source.

+1 on this being added

Chiming in here. I need a functionality like this and at the moment it's looking like it's gonna be hours of work.

Hard to believe this hasn't been implemented. Should have been done a long time ago. I was able to change 200+ trackers in an old copy of uTorrent 2.2.1.

Well it's ugly but I found a solution that works for me. A keyboard\mouse macro recorder. I made a 24 action recording and looped it, it's gonna take a few minutes but it'll update all my torrents tracker info.

https://sourceforge.net/projects/minimousemacro/

I made a second try to build it, I figured out, but after it crashed at launch. But I also found the solution, zlib wasn't compiled with right options.
Now that I already putted few hours to build it correctly, I will be able to look at this issue. I hope that it will be easier.

I don't understand, deluge is an other software.

Any progress on this since june?

Still no progress? I see a lot of "DO this in Linux" but nothing for windows that isn't "Just notepad it and hope it doesn't break"

https://github.com/qbittorrent/qBittorrent/pull/6968
My pull request was refused, for UX reason but I didn't get any suggestion on way to improve it. I don't really want to do something more complex without assurance to see it accepted.

@Flamaros It was not refused, was only on-hold. Just re-ping devs if they disappear for a longer period of time. They are extremely busy all the time as you can see from the progress they make with each release.

I read the thread btw and IMO even the "common trackers" is confusing. I mean, at the moment kinda too, as it only shows the latest selected torrent's trackers anyway. So it would not get more confusing than it already is. Maybe with a multi-select, it could say "Multiple torrents selected, only showing the trackers they share." and then a list or something like that.

But, I am not a core dev, nor I have any say on the matter. Just an idea. Again, feel free to ping glassez in the thread, I am sure he just got busy with something else. If you worked out a new solution for multi-select tracker listing, it would enhance the default behavior as well.

Updating the announce url of my 1000s of torrents is currently impossible. Please help.. is there any update on this?

@glassez
I would love to advance this topic, but I need a direction to implement something that will be accepted. As qBittorent user, I love his GUI that doesn't require a lot of clicks, that why I am not in favor to add a dedicated menu for trackers urls management like uTorrent.
@Balls0fSteel Like you I consider the actual presentation with the trackers of the latest selected torrent already confusing, but all tabs that are on the left acts like that, that why I think that adding a new tab on the right near the speed graphics will respect the convention. By this way every widget with tabs on the left will acts only on the latest selected torrent and widget that have the tab on the right are global to all torrents.
I think that users want to change the url of a tracker want to do this for every torrent that is using the same tracker url not only a bunch of them.
So my proposal is to create a GlobalTrackerList widget that will be a tree view with the tracker urls as first level nodes. Each url node could have a list of torrents that use this url as children. In this way it will be possible to check which torrent will be affected by the url change.

PS : Last time I checked, I wasn't able to compile qBittorent any more, because the project configuration changed, just for info, the first time I already spent more time to get my configuration right than doing the code changes.

In utorrent it's pretty easy to bulk change tracker urls.
Just select the torrents> Right click> properties and just fill in the tracker urls. Similar feature would be great.
Or maybe something into how things currently work, when we select a torrent and go to the "trackers" tab, we can only select one torrent to change it's tracker url, even if we select multiple torrents, it considers the last one. If possible, just edit this feature to show the no. of torrents selected in the trackers tab and the a way to change the tracker urls..

+1 This feature is really needed. I'm in agreement with @TheAntlers here. I like what uTorrent has done. Very sleek and easy to use when you need to update trackers on bulk torrents.

Thanks for the work on this!

Yes this is needed please!

Yep. needed. :)

Yes please

In the meantime I hope this little script helps - bt_trackers_replacer

Please add - there must be a way to emulate how uTorrent does it.

I'd like to see this as well.

It's security issue as well since if you accidentally (or URL is taken over etc.) add a tracker URL that's malicious to all your torrents (using a tracker list for example), you might want to check all your torrents through and remove it from all of them.

At this time it'll take hours to go through all the torrents for this manually and slowly.

Hi, I just created an account to respond to this. qBittorrent has been my main client for years now and I really love it... But the lack of this feature just forced me to update 370 torrents manually because the tracker's nnounce url changed. When I eventually format my computer and start from scratch, I will definitely make sure that the client I use has this feature before I actually need it... Please do something about this!

From a long-time user,

Have a good day

Hi, I just created an account to respond to this. qBittorrent has been my main client for years now and I really love it... But the lack of this feature just forced me to update 370 torrents manually because the tracker's nnounce url changed. When I eventually format my computer and start from scratch, I will definitely make sure that the client I use has this feature before I actually need it... Please do something about this!

From a long-time user,

Have a good day

Still on uTorrent 2.2.1 (2011) because of this lack of feature :(

just write an autohotkey script to do it for you

I need this feature so badly... yikes!

it's been 4 years. I don't think we will ever get this feature. sad.

Very Sad. I have a lot of seeds. When the day comes that I have to update my tracker, I will jump to another client in a heartbeat.

@AbfSailor commented on 2019. jan. 18. 04:42 CET:

Very Sad. I have a lot of seeds. When the day comes that I have to update my tracker, I will jump to another client in a heartbeat.

How cruel you are, the devs will weep for the loss of you.

It will be me who is weeping. I love the client. The client switch would be obligated and not preferred. :(

Some kind person has already done half the work here: https://bitbucket.org/rumanzo/qbtchangetracker/downloads/

https://github.com/rumanzo/qbtchangetracker/

Please incorporate this into qBittorrent. come on you smart people! you can do it!

Please do it. I want each torrent i have to include local torrent announcement. So I am sure my local downloads from media server to laptop try to use local data as much as possible.

Asking for opinions here, what would you expect the "Edit trackers" dialog to show when editing trackers of multiple torrents? Should the dialog only show trackers if they are the same for all selected torrents otherwise empty (utorrent behavior), or show the common trackers that are present in selected torrents, or all trackers merged together from selected torrents?

@Chocobo1 I think like utorrent is the best behavior: show the trackers only if all trackers are the same, otherwise, show an empty box.

I鈥檇 say show only the common trackers.
Useful for public torrents with many trackers.

show only the common trackers.

I think it's best compromise way. It allows you to never reenter trackers that are already exists in all selected torrents.

@Chocobo1 commented on 2019. j煤l. 8. 13:02 CEST:

Asking for opinions here, what would you expect the "Edit trackers" dialog to show when editing trackers of multiple torrents? Should the dialog show all trackers if they are the same for all selected torrents otherwise empty (utorrent behavior), or show the common trackers that are present in selected torrents, or all trackers merged together from selected torrents?

I see no reason why common trackers shouldn't be shown. It's one better than only showing identical trackers. Some od private torrents might have more trackers added because of the tracker changing. Or just the website changing to add more trackers.

@thalieht @Piccirello
Any comments about this? https://github.com/qbittorrent/qBittorrent/issues/2428#issuecomment-509180799

I think showing common trackers is the best approach. We risk slightly confusing the user but also make this dialog box a lot more useful. Showing the full, unique list of trackers might be too confusing, despite being a bit more useful.

If only common trackers are shown, then there ought to be some indication that some trackers have been ignored otherwise a bad user mistake could happen. Consider, it would not be ideal if a bunch of items had trackers changed from url1 to url2, only to realise afterwards that some items selected actually had url3 and those url3's are now lost forever.

Perhaps place common trackers at the top of the list, and trackers that only exist in less than 100% of items in a list below - that gives the user warning that they need to refine the filter of their selected items before committing to what is an important change.

@JackDandy commented on 2019. szept. 26. 02:04 CEST:

Consider, it would not be ideal if a bunch of items had trackers changed from url1 to url2, only to realise afterwards that some items selected actually had url3 and those url3's are now lost forever.

Obviously in a case like that trackers that are not shown wouldn't be touched.

Obviously in a case like that trackers that are not shown wouldn't be touched.

So as an idea, perhaps deselect the modified items so that the user can act on the remaining selected unchanged items - that would be pretty quick and intuitive.

Asking for opinions here, what would you expect the "Edit trackers" dialog to show when editing trackers of multiple torrents? Should the dialog only show trackers if they are the same for all selected torrents otherwise empty (utorrent behavior), or show the common trackers that are present in selected torrents, or all trackers merged together from selected torrents?

I have a different take than others on this:
I suggest an "edit mode" toggle button for listing all known trackers in the bottom properties box (so same list of trackers as in the filter list in left hand panel) and use check/ uncheck/ grey check selection boxes. Check adds that tracker to all selected torrents, uncheck clears that tracker from all selected torrents, grey check leaves existing / doesn't modify wrt that tracker. (Which is consistent with how tags work.) Un-toggle the edit mode button to apply changes, possibly with a summary of proposed changes and a confirmation dialog.

For a new tracker, you'd have to do a manual add for one torrent, then do a multi select edit, where the newly added tracker will now be listed. Alternately, a blank tracker box could be added below the last tracker on the list, to be used to manually add a new tracker.

Separately, I think that the tracker filter list in the left hand panel should also be editable, where you could select an existing tracker and edit the address, which would update all instances of that tracker. This would be especially useful for cases of reset passkeys or when changing from http to https for a particular tracker.

Or, for consistency, you could implement the same functionality by selecting

That's my .02

While we wait for qbit devs to implement this feature in the client (one day...:p) I have just learned of the existence of this program which does the job:

Interactive CLI tool for change trackers in qBittorrent (win,mac,linux)

I have not tried it myself but I read from a reputable user that it does work. Hope it will help someone!

This is what we wanted ?

https://github.com/qbittorrent/qBittorrent/blob/master/Changelog

Tue Dec 03 2019 - sledgehammer999 <[email protected]> - v4.2.0
      - FEATURE: Add "Tracker entries" dialog (Chocobo1)

Commit : https://github.com/qbittorrent/qBittorrent/commit/9e7f50517e6e954bf880ce1e202426daea8e4b82

Screenshot

This is what we wanted ?

THIS锛丗INALLY! 馃槃

This is what we wanted ?

Yes, exactly what I had in mind.

It seems to me that this is fixed/implemented. So closing this bug report.

This is what we wanted ?

https://github.com/qbittorrent/qBittorrent/blob/master/Changelog

Tue Dec 03 2019 - sledgehammer999 <[email protected]> - v4.2.0
      - FEATURE: Add "Tracker entries" dialog (Chocobo1)

Commit : 9e7f505

Screenshot

i am running qBittorrent 4.2.1 and its not available.

@lordvalium it's in the transfer list's context menu, not the trackers tab.

@lordvalium it's in the transfer list's context menu, not the trackers tab.

Hi, yes i saw it in the upper screenshot. Thats really weird. Look
image
gith1

Oh you're talking about the WebUI... yeah it doesn't seem to exist there. You should make a new issue about it.

It doesn't seem like the feature is flawless. It doesn't seem to always show all shared trackers.
For torrent 1:

http://nyaa.tracker.wf:7777/announce

http://open.nyaatorrents.info:6544/announce

udp://open.stealth.si:80/announce

udp://tracker.opentrackr.org:1337/announce

udp://tracker.coppersurfer.tk:6969/announce

udp://exodus.desync.com:6969/announce

Torrent 2:

http://nyaa.tracker.wf:7777/announce

udp://open.stealth.si:80/announce

udp://tracker.opentrackr.org:1337/announce

udp://tracker.coppersurfer.tk:6969/announce

udp://exodus.desync.com:6969/announce

For both:
http://nyaa.tracker.wf:7777/announce

Is it only comparing line-by-line? That's of course thoroughly inadequate to find shared trackers.
I also had one pairing where I got one tracker then several empty lines, then another tracker.

Another big issue in my opinion is erasing all the not shown trackers unpredictably and silently.
One doesn't see the trackers that are not common, might even assume trackerless torrents if nothing's shown, and might end up erasing all when adding a tracker.

Also it's a practical issue. One might just want to add a tracker to several torrents no matter what they have. But it's not possible. I wanted to add a new tracker url for a couple private torrents from the same website and keeping the old ones just in case they're needed, but ended up erasing them, because the listed trackers changed over time (more urls were added or whatever) nothing showed up in the edit window. And when I added the new url the old ones were gone. Which only became clear after it was done.

erasing all the not shown trackers unpredictably and silently

I wrote that scenario at the design stage last Sept as something to carefully avoid...

your reply at the time was...

Obviously in a case like that trackers that are not shown wouldn't be touched.

And here we are with trackers "_erased silently_" -- the url3 that I wrote of not "_Obviously_" taken care of at all. Doooh! :p

@JackDandy commented on 2020. jan. 12. 11:46 CET:

erasing all the not shown trackers unpredictably and silently

I wrote that scenario at the design stage last Sept as something to carefully avoid...

your reply at the time was...

Obviously in a case like that trackers that are not shown wouldn't be touched.

And here we are with trackers "_erased silently_" -- the url3 that I wrote of not "_Obviously_" taken care of at all. Doooh! :p

Yeah, well that was how I would have done it.

Sooo...is there any way to get all my trackers back or am I fucked?

Edit: I got most of them back by re-merging all .torrents inside \appdata\Local\qBittorrent\BT_Backup\

Still no closer to having a proper solution that doesn't involve being misled into deleting all your trackers though.

Sooo...is there any way to get all my trackers back or am I fucked?

Edit: I got most of them back by re-merging all .torrents inside \appdata\Local\qBittorrent\BT_Backup\

Still no closer to having a proper solution that doesn't involve being misled into deleting all your trackers though.

I guess opening all the torrents again (from the bt_backup folder) should help.

Merging won't work if they're private...

Perhaps it would be a simpler approach to only allow editing if a specific tracker is selected.

@lordvalium you could always load all the torrents you want to change into rutorrent webUI as do not download, then right click, edit your announce url. Right click then all again and download the amended torrents and reload them into QB

Was this page helpful?
0 / 5 - 0 ratings