Update README
No longer maintained; update README
Fix Windows compatibility
Removes likes and comments from your VKontakte account.
Руководство на русском языке (Russian version)
To use this program, you need to get an archive of your data from VK. You can start the export process on this page. Make sure you check Comments when choosing what data to export, or you won′t be able to delete them!. The process usually takes from 2 to 3 days. The resulting archive usually weights less than 150 MB.
As of now, vk-liberator supports the deletion of your likes (essentially, un-liking all posts you′ve ever pressed that heart icon on) and the deletion of your wall comments. Adding support for more object types is pretty trivial, so if you feel the need for more, you′re always welcome to send a patch!
Once you get the archive:
comments
, likes
,
profile
) are all in the aforementioned folder.cd
(trailing space intended) → drag the
folder into the terminal window → press Enterpip3 install -r requirements.txt
python3 main.py YOUR_FOLDER_HERE --crawl-all
, replacing
YOUR_PROGRAM_HERE
with the folder name you′ve unpacked the export to (in my
case, it would′ve been vk
).access_token=
and &expires_in
.By default the program finds all items it can understand and runs the deletion process, prompting for a captcha in the terminal window. If you want to customize the behavior, read further.
vk-liberator has a set of command-line switches for choosing the types of objects to delete:
--crawl-likes
enables deleting of likes,--crawl-comments
enables deleting of comments.There is another switch called --crawl-all
, which enables all types mentioned
before and makes the aforementioned flags toggle the corresponding types off,
not on to allow exclusion.
There are many other command-line switches available. You can run the program
with --help
to learn more.
The export archive from VKontakte contains pretty much all info about your liked posts, photos and videos. However, it doesn′t have anything about your liked comments, so you need to do some semi-manual work to retrieve a list of them.
The process roughly expands as follows:
first, you delete your likes the usual way;
after all likes were deleted, you go to vk.com → “Liked” newsfeed section;
scroll all the way down (you can use PgDown or End keys);
run this script:
console.log(Array.from(document.querySelectorAll('.post_link:first-child')).map(el => el.href).join('\n'))
create YOUR_EXPORT_DIR/likes/comments/
folder and copy the output to
comments.html
;
move everything else out of YOUR_EXPORT_DIR/likes/
because it was already
deleted;
delete your resume file (resume.bin
);
and run the program again with the same arguments.
I might optimize this in the future to make it more user-friendly, because it′s a pain and requires knowing some internals, but right now it′s done like that.
Sitting on your computer and solving the captchas all day can be pretty tedious, but you can make this process a little bit easier with Telegram integration. I′ve used this to solve captchas from my smartphone, and it was definitely easier than doing it on PC.
To enable it, you need to:
/newbot
, then follow the
instructions./getid
command and copying the ID
you got back.--telegram-chat <your ID goes here>
switch. Like this: python3 main.py YOUR_FOLDER_HERE --crawl-all --telegram-chat YOUR_ID
.Now you should be getting asked by the bot for captcha. If you don't receive anything, check the chat ID again. It should match your account's ID.
But this doesn′t really solve the actual problem — the captcha. VKontakte′s limits are pretty strict. You can get a captcha or two when deleting your comments, but rate limits for deleting likes are much stricter — you′re guaranteed to run into a captcha approximately every 50 requests, no matter the delay between requests.
That′s why you can pay with your money instead of your precious time. The program supports integration with Anti-captcha.com (ex-Antigate) to ease your torment. The prices are pretty cheap — I′ve paid $1 for 25K of my VK requests (divide that by 40 to get an approximate count of captcha requests).
--anticaptcha
switch, then paste your API key from
the website when asked by the program.